You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

46 lines
1.4 KiB

3 years ago
{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.}