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.

2 lines
2.8 KiB

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>infer (infer.infer)</title><link rel="stylesheet" href="../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 1.5.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body><div class="content"><header><nav><a href="index.html">Up</a> <a href="index.html">infer</a> &#x00BB; infer</nav><h1 id="infer"><a href="#infer" class="anchor"></a>Infer</h1><nav class="toc"><ul><li><a href="#backend">Backend</a></li><li><a href="#frontends">Frontends</a></li><li><a href="#utilities">Utilities</a></li><li><a href="#integrations-and-infer-executables">Integrations and Infer executables</a></li><li><a href="#index">Index</a></li></ul></nav></header><h2 id="backend"><a href="#backend" class="anchor"></a>Backend</h2><p>Want to write your own analysis? You probably want the <a href="Absint.html">Absint</a> library. <a href="Backend.html">Backend</a> is in charge of orchestrating the various analyses on a collection of procedures.</p><p>Some of the simplest analyses can be found in the <a href="Checkers.html">Checkers</a> library.</p><h2 id="frontends"><a href="#frontends" class="anchor"></a>Frontends</h2><p>The frontends translate the source code to analyze into Infer's intermediate representation (see <a href="IR.html">IR</a>) to be analyzed by the backend.</p><p>There are two frontends:</p><ul><li><a href="ClangFrontend.html">Clang</a></li><li><a href="JavaFrontend.html">Java</a></li></ul><p>See also <a href="ASTLanguage.html">AST Language</a>, and <a href="TestDeterminators.html">TestDeterminators</a>, which operate right after the frontends.</p><h2 id="utilities"><a href="#utilities" class="anchor"></a>Utilities</h2><p><a href="IStdlib.html">IStdlib</a> groups non-Infer-specific modules, and <a href="IBase.html">IBase</a> contains more Infer-specific modules that other Infer libraries need, usually depending on the <a href="IBase/Config/index.html"><code>IBase.Config</code></a> module. Some datatypes and their accompanying utilities are defined in the <a href="ATDGenerated.html">ATDGenerated</a> library.</p><h2 id="integrations-and-infer-executables"><a href="#integrations-and-infer-executables" class="anchor"></a>Integrations and Infer executables</h2><p><a href="Integration.html">Integration</a> ties the frontends and backend together, and deals with build system integrations.</p><p>You'll find the source code for the <code>infer</code> command-line interface and others in the <a href="https://github.com/facebook/infer/blob/master/infer/src/">infer/src/</a> directory.</p><h2 id="index"><a href="#index" class="anchor"></a>Index</h2><p><a href="index.html">List of all libraries.</a></p></div></body></html>