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.

3 lines
11 KiB

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>InferModules__CContext (infer.InferModules__CContext)</title><link rel="stylesheet" href="../../odoc.css"/><meta charset="utf-8"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><meta name="generator" content="doc-ock-html v1.0.0-1-g1fc9bf0"/></head><body><nav id="top"><a href="../index.html">Up</a> &mdash; <span class="package">package <a href="../index.html">infer</a></span></nav><header><h1><span class="keyword">Module</span> <span class="module-path">InferModules__CContext</span></h1></header><p>Contains current class and current method to be translated as well as local variables,</p><p>and the cg, cfg, and tenv corresponding to the current file.</p><div class="spec module" id="module-StmtMap"><a href="#module-StmtMap" class="anchor"></a><div class="def module"><code><span class="keyword">module </span>StmtMap = <a href="../InferModules/ClangPointers/index.html#module-Map">InferModules.ClangPointers.Map</a></code></div><div class="doc"></div></div><div class="spec type" id="type-curr_class"><a href="#type-curr_class" class="anchor"></a><div class="def type"><code><span class="keyword">type </span>curr_class</code><code></code><code><span class="keyword"> = </span></code><table class="variant"><tr id="type-curr_class.ContextClsDeclPtr" class="anchored"><td class="def constructor"><a href="#type-curr_class.ContextClsDeclPtr" class="anchor"></a><code><span class="keyword">| </span></code><code><span class="constructor">ContextClsDeclPtr</span><span class="keyword"> of </span>int</code></td></tr><tr id="type-curr_class.ContextNoCls" class="anchored"><td class="def constructor"><a href="#type-curr_class.ContextNoCls" class="anchor"></a><code><span class="keyword">| </span></code><code><span class="constructor">ContextNoCls</span></code></td></tr></table><code></code></div><div class="doc"></div></div><div class="spec include"><div class="doc"></div><details open="open"><summary><span class="def"><code><span class="keyword">include </span><span class="keyword">sig</span> ... <span class="keyword">end</span></code></span></summary><div class="spec val" id="val-compare_curr_class"><a href="#val-compare_curr_class" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>compare_curr_class : <a href="index.html#type-curr_class">curr_class</a> <span class="keyword">&#8209;&gt;</span> <a href="index.html#type-curr_class">curr_class</a> <span class="keyword">&#8209;&gt;</span> int</code></div><div class="doc"></div></div></details></div><div class="spec type" id="type-str_node_map"><a href="#type-str_node_map" class="anchor"></a><div class="def type"><code><span class="keyword">type </span>str_node_map</code><code><span class="keyword"> = </span>(string, <a href="../../InferIR/InferIR/Procdesc/Node/index.html#type-t">InferIR.Procdesc.Node.t</a>) <a href="../../InferStdlib/InferStdlib/index.html#module-IStd">InferStdlib.IStd</a>.Caml.Hashtbl.t</code><code></code></div><div class="doc"></div></div><div class="spec type" id="type-t"><a href="#type-t" class="anchor"></a><div class="def type"><code><span class="keyword">type </span>t</code><code></code><code><span class="keyword"> = </span></code><code>{</code><table class="record"><tr id="type-t.translation_unit_context" class="anchored"><td class="def field"><a href="#type-t.translation_unit_context" class="anchor"></a><code>translation_unit_context : <a href="../InferModules/CFrontend_config/index.html#type-translation_unit_context">InferModules.CFrontend_config.translation_unit_context</a>;</code></td></tr><tr id="type-t.tenv" class="anchored"><td class="def field"><a href="#type-t.tenv" class="anchor"></a><code>tenv : <a href="../../InferIR/InferIR/Tenv/index.html#type-t">InferIR.Tenv.t</a>;</code></td></tr><tr id="type-t.cfg" class="anchored"><td class="def field"><a href="#type-t.cfg" class="anchor"></a><code>cfg : <a href="../../InferIR/InferIR/Cfg/index.html#type-t">InferIR.Cfg.t</a>;</code></td></tr><tr id="type-t.procdesc" class="anchored"><td class="def field"><a href="#
statement *)</p></td></tr></table><code>}</code><code></code></div><div class="doc"></div></div><div class="spec val" id="val-get_curr_class"><a href="#val-get_curr_class" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>get_curr_class : <a href="index.html#type-t">t</a> <span class="keyword">&#8209;&gt;</span> <a href="index.html#type-curr_class">curr_class</a></code></div><div class="doc"></div></div><div class="spec val" id="val-get_curr_class_typename"><a href="#val-get_curr_class_typename" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>get_curr_class_typename : <a href="../../InferGenerated/InferGenerated/Clang_ast_t/index.html#type-stmt_info">InferGenerated.Clang_ast_t.stmt_info</a> <span class="keyword">&#8209;&gt;</span> <a href="index.html#type-t">t</a> <span class="keyword">&#8209;&gt;</span> <a href="../../InferIR/InferIR/Typ/Name/index.html#type-t">InferIR.Typ.Name.t</a></code></div><div class="doc"></div></div><div class="spec val" id="val-get_curr_class_decl_ptr"><a href="#val-get_curr_class_decl_ptr" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>get_curr_class_decl_ptr : <a href="../../InferGenerated/InferGenerated/Clang_ast_t/index.html#type-stmt_info">InferGenerated.Clang_ast_t.stmt_info</a> <span class="keyword">&#8209;&gt;</span> <a href="index.html#type-curr_class">curr_class</a> <span class="keyword">&#8209;&gt;</span> <a href="../../InferGenerated/InferGenerated/Clang_ast_t/index.html#type-pointer">InferGenerated.Clang_ast_t.pointer</a></code></div><div class="doc"></div></div><div class="spec val" id="val-is_objc_method"><a href="#val-is_objc_method" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>is_objc_method : <a href="index.html#type-t">t</a> <span class="keyword">&#8209;&gt;</span> bool</code></div><div class="doc"></div></div><div class="spec val" id="val-create_context"><a href="#val-create_context" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>create_context : <a href="../InferModules/CFrontend_config/index.html#type-translation_unit_context">InferModules.CFrontend_config.translation_unit_context</a> <span class="keyword">&#8209;&gt;</span> <a href="../../InferIR/InferIR/Tenv/index.html#type-t">InferIR.Tenv.t</a> <span class="keyword">&#8209;&gt;</span> <a href="../../InferIR/InferIR/Cfg/index.html#type-t">InferIR.Cfg.t</a> <span class="keyword">&#8209;&gt;</span> <a href="../../InferIR/InferIR/Procdesc/index.html#type-t">InferIR.Procdesc.t</a> <span class="keyword">&#8209;&gt;</span> <a href="index.html#type-curr_class">curr_class</a> <span class="keyword">&#8209;&gt;</span> <a href="../../InferIR/InferIR/Typ/index.html#type-t">InferIR.Typ.t</a> option <span class="keyword">&#8209;&gt;</span> bool <span class="keyword">&#8209;&gt;</span> <a href="index.html#type-t">t</a> option <span class="keyword">&#8209;&gt;</span> <a href="../../InferGenerated/InferGenerated/Clang_ast_t/index.html#type-decl">InferGenerated.Clang_ast_t.decl</a> list <a href="../InferModules__ClangPointers/Map/index.html#type-t">StmtMap.t</a> <span class="keyword">&#8209;&gt;</span> <a href="index.html#type-t">t</a></code></div><div class="doc"></div></div><div class="spec val" id="val-add_block_static_var"><a href="#val-add_block_static_var" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>add_block_static_var : <a href="index.html#type-t">t</a> <span class="keyword">&#8209;&gt;</span> <a href="../../InferIR/InferIR/Typ/Procname/index.html#type-t">InferIR.Typ.Procname.t</a> <span class="keyword">&#8209;&gt;</span> (<a href="../../InferIR/InferIR/Pvar/index.html#type-t">InferIR.Pvar.t</a><span class="keyword"> * </span><a href="../../InferIR/InferIR/Typ/index.html#type-t">InferIR.Typ.t</a>) <span class="keyword">&#8209;&gt;</span> unit</code></div><div class="doc"></div></div><div class="spec val" id="val-is_objc_instance"><a href="#val-is_objc_instance" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>i