{0 Infer} {1 Backend} Want to write your own analysis? You probably want the {{:Absint.html}Absint} library. {{:Backend.html}Backend} is in charge of orchestrating the various analyses on a collection of procedures. Some of the simplest analyses can be found in the {{:Checkers.html} Checkers} library. {1 Frontends} The frontends translate the source code to analyze into Infer's intermediate representation (see {{:IR.html} IR}) to be analyzed by the backend. There are two frontends: - {{:ClangFrontend.html} Clang} - {{:JavaFrontend.html} Java} See also {{:ASTLanguage.html} AST Language}, and {{:TestDeterminators.html} TestDeterminators}, which operate right after the frontends. {1 Utilities} {{:IStdlib.html} IStdlib} groups non-Infer-specific modules, and {{:IBase.html} IBase} contains more Infer-specific modules that other Infer libraries need, usually depending on the {!module-IBase.Config} module. Some datatypes and their accompanying utilities are defined in the {{:ATDGenerated.html} ATDGenerated} library. {1 Integrations and Infer executables} {{:Integration.html} Integration} ties the frontends and backend together, and deals with build system integrations. You'll find the source code for the [infer] command-line interface and others in the {{:https://github.com/facebook/infer/blob/master/infer/src/}infer/src/} directory. {1 Index} {{:index.html}List of all libraries.}