JET's codebase is structured as following:
- src/abstractinterpret: implements the core functionalities of
AbstractAnalyzer, the general program analysis framework based on abstract interpretation - src/toplevel: implements
ConcreteInterpreter, which is combined withAbstractAnalyzerto analyze top-level scripts - src/ui: implements a set of functionalities to show
AbstractAnalyzer's analysis result in various frontends, e.g. console output - src/analyzers: implements the default set of useful analyzers built on top of the
AbstractAnalyzerframework - src/JET.jl: defines the package, implements various analysis entry points