This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.
<!DOCTYPE html>
<htmlxmlns="http://www.w3.org/1999/xhtml"><head><title>JTrans (infer.InferModules.JTrans)</title><linkrel="stylesheet"href="../../../odoc.css"/><metacharset="utf-8"/><metaname="generator"content="odoc %%VERSION%%"/><metaname="viewport"content="width=device-width,initial-scale=1.0"/><scriptsrc="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body><divclass="content"><header><nav><ahref="../index.html">Up</a>–<ahref="../../index.html">infer</a>»<ahref="../index.html">InferModules</a>» JTrans</nav><h1>Module <code>InferModules.JTrans</code></h1></header><dl><dtclass="spec type"id="type-translation"><ahref="#type-translation"class="anchor"></a><code><spanclass="keyword">type</span> translation</code><code> = </code><tableclass="variant"><trid="type-translation.Skip"class="anchored"><tdclass="def constructor"><ahref="#type-translation.Skip"class="anchor"></a><code>| </code><code><spanclass="constructor">Skip</span></code></td></tr><trid="type-translation.Instr"class="anchored"><tdclass="def constructor"><ahref="#type-translation.Instr"class="anchor"></a><code>| </code><code><spanclass="constructor">Instr</span><spanclass="keyword">of</span><ahref="../../../InferIR/InferIR/Procdesc/Node/index.html#type-t">InferIR.Procdesc.Node.t</a></code></td></tr><trid="type-translation.Prune"class="anchored"><tdclass="def constructor"><ahref="#type-translation.Prune"class="anchor"></a><code>| </code><code><spanclass="constructor">Prune</span><spanclass="keyword">of</span><ahref="../../../InferIR/InferIR/Procdesc/Node/index.html#type-t">InferIR.Procdesc.Node.t</a> * <ahref="../../../InferIR/InferIR/Procdesc/Node/index.html#type-t">InferIR.Procdesc.Node.t</a></code></td></tr><trid="type-translation.Loop"class="anchored"><tdclass="def constructor"><ahref="#type-translation.Loop"class="anchor"></a><code>| </code><code><spanclass="constructor">Loop</span><spanclass="keyword">of</span><ahref="../../../InferIR/InferIR/Procdesc/Node/index.html#type-t">InferIR.Procdesc.Node.t</a> * <ahref="../../../InferIR/InferIR/Procdesc/Node/index.html#type-t">InferIR.Procdesc.Node.t</a> * <ahref="../../../InferIR/InferIR/Procdesc/Node/index.html#type-t">InferIR.Procdesc.Node.t</a></code></td></tr></table></dt><dd><p>Data structure for storing the results of the translation of an instruction.</p></dd></dl><dl><dtclass="spec value"id="val-is_java_native"><ahref="#val-is_java_native"class="anchor"></a><code><spanclass="keyword">val</span> is_java_native : <span>Javalib_pack.JCode.jcode Javalib_pack.Javalib.concrete_method</span><span>-></span> bool</code></dt><dtclass="spec value"id="val-create_callee_attributes"><ahref="#val-create_callee_attributes"class="anchor"></a><code><spanclass="keyword">val</span> create_callee_attributes : <ahref="../../../InferIR/InferIR/Tenv/index.html#type-t">InferIR.Tenv.t</a><span>-></span><ahref="../JClasspath/index.html#type-program">JClasspath.program</a><span>-></span> Javalib_pack.JBasics.class_name <span>-></span> Javalib_pack.JBasics.method_signature <span>-></span><ahref="../../../InferIR/InferIR/Typ/Procname/index.html#type-t">InferIR.Typ.Procname.t</a><span>-></span><span><ahref="../../../InferIR/InferIR/ProcAttributes/index.html#type-t">InferIR.ProcAttributes.t</a> option</span></code></dt><dtclass="spec value"id="val-create_am_procdesc"><ahref="#val-create_am_procdesc"class="anchor"></a><code><spanclass="keyword">val</span> create_am_procdesc : <ahref="../../../InferBase/InferBase/SourceFile/index.html#type-t">InferBase.SourceFile.t</a><span>-></span><ahref="../JClasspath/index.html#type-program">JClasspath.program</a><span>-></span><ahref="../JContext/index.html#type-icfg">JContext.icfg</a><span>-></span> Javalib_pack.Javalib.abstract_method <span>-></span><ahref="../../../InferIR/InferIR/Typ/Procname/index.html#type-t">InferIR.Typ.Procname.t</a><span>-></span><ahref="../../../InferIR/InferIR/Procdesc/index.html#type-t">InferIR.Procdesc.t</a></code></dt><dd><p>Create the procedure description for an abstract method</p></dd></dl><dl><dtclass="spec value"id="val-create_native_procdesc"><ahref="#val-create_native_procdesc"class="anchor"></a><code><spanclass="keyword">val</span> create_native_procdesc : <ahref="../../../InferBase/InferBase/SourceFile/index.html#type-t">InferBase.SourceFile.t</a><span>-></span><ahref="../JClasspath/index.html#type-program">JClasspath.program</a><span>-></span><ahref="../JContext/index.html#type-icfg">JContext.icfg</a><span>-></span><span>Javalib_pack.JCode.jcode Javalib_pack.Javalib.concrete_method</span><span>-></span><ahref="../../../InferIR/InferIR/Typ/Procname/index.html#type-t">InferIR.Typ.Procname.t</a><span>-></span><ahref="../../../InferIR/InferIR/Procdesc/index.html#type-t">InferIR.Procdesc.t</a></code></dt><dd><p>Create the procedure description for a concrete method</p></dd></dl><dl><dtclass="spec value"id="val-create_empty_procdesc"><ahref="#val-create_empty_procdesc"class="anchor"></a><code><spanclass="keyword">val</span> create_empty_procdesc : <ahref="../../../InferBase/InferBase/SourceFile/index.html#type-t">InferBase.SourceFile.t</a><span>-></span><ahref="../JClasspath/index.html#type-program">JClasspath.program</a><span>-></span><ahref="../Printer/LineReader/index.html#type-t">Printer.LineReader.t</a><span>-></span><ahref="../JContext/index.html#type-icfg">JContext.icfg</a><span>-></span><span>Javalib_pack.JCode.jcode Javalib_pack.Javalib.concrete_method</span><span>-></span><ahref="../../../InferIR/InferIR/Typ/Procname/index.html#type-t">InferIR.Typ.Procname.t</a><span>-></span><ahref="../../../InferIR/InferIR/Procdesc/index.html#type-t">InferIR.Procdesc.t</a></code></dt><dtclass="spec value"id="val-create_cm_procdesc"><ahref="#val-create_cm_procdesc"class="anchor"></a><code><spanclass="keyword">val</span> create_cm_procdesc : <ahref="../../../InferBase/InferBase/SourceFile/index.html#type-t">InferBase.SourceFile.t</a><span>-></span><ahref="../JClasspath/index.html#type-program">JClasspath.program</a><span>-></span><ahref="../Printer/LineReader/index.html#type-t">Printer.LineReader.t</a><span>-></span><ahref="../JContext/index.html#type-icfg">JContext.icfg</a><span>-></span><span>Javalib_pack.JCode.jcode Javalib_pack.Javalib.concrete_method</span><span>-></span><ahref="../../../InferIR/InferIR/Typ/Procname/index.html#type-t">InferIR.Typ.Procname.t</a><span>-></span><span><span>(<ahref="../../../InferIR/InferIR/Procdesc/index.html#type-t">InferIR.Procdesc.t</a> * <ahref="../../../InferIR/InferIR/Procdesc/Node/index.html#type-t">InferIR.Procdesc.Node.t</a> * <ahref="../../../InferIR/InferIR/Procdesc/Node/index.html#type-t">InferIR.Procdesc.Node.t</a> * <ahref="../../../InferIR/InferIR/Procdesc/Node/index.html#type-t">InferIR.Procdesc.Node.t</a> * Sawja_pack.JBir.t)</span> option</span></code></dt><dd><p><code>create_procdesc source_file program linereader icfg cm proc_name</code> creates a procedure description for the concrete method cm and adds it to cfg</p></dd></dl><dl><dtclass="spec value"id="val-instruction"><ahref="#val-instruction"class="anchor"></a><code><spanclass="keyword">val</span> instruction : <ahref="../JContext/index.html#type-t">JContext.t</a><span>-></span> int <span>-></span> Sawja_pack.JBir.instr <span>-></span><ahref="index.html#type-translation">translation</a></code></dt><dd><p>translates an instruction into a statement node or prune nodes in the cfg</p></dd></dl><dl><dtclass="spec exception"id="exception-Frontend_error"><ahref="#exception-Frontend_error"class="anchor"></a><code><spanclass="keyword">exception</span></code><code><spanclass="exception">Frontend_error</span><spanclass="keyword">of</span> string</code></dt></dl></div></body></html>