<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>JavaFrontend__JTrans (infer.JavaFrontend__JTrans)</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; JavaFrontend__JTrans</nav><h1>Module <code>JavaFrontend__JTrans</code></h1></header><dl><dt class="spec type" id="type-translation"><a href="#type-translation" class="anchor"></a><code><span class="keyword">type</span> translation</code><code> = </code><table class="variant"><tr id="type-translation.Skip" class="anchored"><td class="def constructor"><a href="#type-translation.Skip" class="anchor"></a><code>| </code><code><span class="constructor">Skip</span></code></td></tr><tr id="type-translation.Instr" class="anchored"><td class="def constructor"><a href="#type-translation.Instr" class="anchor"></a><code>| </code><code><span class="constructor">Instr</span> <span class="keyword">of</span> <a href="../IR/Procdesc/Node/index.html#type-t">IR.Procdesc.Node.t</a></code></td></tr><tr id="type-translation.Prune" class="anchored"><td class="def constructor"><a href="#type-translation.Prune" class="anchor"></a><code>| </code><code><span class="constructor">Prune</span> <span class="keyword">of</span> <a href="../IR/Procdesc/Node/index.html#type-t">IR.Procdesc.Node.t</a> * <a href="../IR/Procdesc/Node/index.html#type-t">IR.Procdesc.Node.t</a></code></td></tr><tr id="type-translation.Loop" class="anchored"><td class="def constructor"><a href="#type-translation.Loop" class="anchor"></a><code>| </code><code><span class="constructor">Loop</span> <span class="keyword">of</span> <a href="../IR/Procdesc/Node/index.html#type-t">IR.Procdesc.Node.t</a> * <a href="../IR/Procdesc/Node/index.html#type-t">IR.Procdesc.Node.t</a> * <a href="../IR/Procdesc/Node/index.html#type-t">IR.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><dt class="spec value" id="val-is_java_native"><a href="#val-is_java_native" class="anchor"></a><code><span class="keyword">val</span> is_java_native : <span>Javalib_pack.JCode.jcode Javalib_pack.Javalib.concrete_method</span> <span>&#45;&gt;</span> bool</code></dt><dt class="spec value" id="val-create_callee_attributes"><a href="#val-create_callee_attributes" class="anchor"></a><code><span class="keyword">val</span> create_callee_attributes : <a href="../IR/Tenv/index.html#type-t">IR.Tenv.t</a> <span>&#45;&gt;</span> <a href="../JavaFrontend/JProgramDesc/index.html#type-t">JavaFrontend.JProgramDesc.t</a> <span>&#45;&gt;</span> Javalib_pack.JBasics.class_name <span>&#45;&gt;</span> Javalib_pack.JBasics.method_signature <span>&#45;&gt;</span> <a href="../IR/Procname/index.html#type-t">IR.Procname.t</a> <span>&#45;&gt;</span> <span><a href="../IR/ProcAttributes/index.html#type-t">IR.ProcAttributes.t</a> option</span></code></dt><dt class="spec value" id="val-create_am_procdesc"><a href="#val-create_am_procdesc" class="anchor"></a><code><span class="keyword">val</span> create_am_procdesc : <a href="../IBase/SourceFile/index.html#type-t">IBase.SourceFile.t</a> <span>&#45;&gt;</span> <a href="../JavaFrontend/JProgramDesc/index.html#type-t">JavaFrontend.JProgramDesc.t</a> <span>&#45;&gt;</span> <a href="../JavaFrontend/JContext/index.html#type-icfg">JavaFrontend.JContext.icfg</a> <span>&#45;&gt;</span> Javalib_pack.Javalib.abstract_method <span>&#45;&gt;</span> <a href="../IR/Procname/index.html#type-t">IR.Procname.t</a> <span>&#45;&gt;</span> <a href="../IR/Procdesc/index.html#type-t">IR.Procdesc.t</a></code></dt><dd><p>Create the procedure description for an abstract method</p></dd></dl><dl><dt class="spec value" id="val-create_native_procdesc"><a href="#val-create_native_procdesc" class="anchor"></a><code><span class="keyword">val</span> create_native_procdesc : <a href="../IBase/SourceFile/index.html#type-t">IBase.SourceFile.t</a> <span>&#45;&gt;</span> <a href="../JavaFrontend/JProgramDesc/index.html#type-t">JavaFrontend.JProgramDesc.t</a> <span>&#45;&gt;</span> <a href="../JavaFrontend/JContext/index.html#type-icfg">JavaFrontend.JContext.icfg</a> <span>&#45;&gt;</span> <span>Javalib_pack.JCode.jcode Javalib_pack.Javalib.concrete_method</span> <span>&#45;&gt;</span> <a href="../IR/Procname/index.html#type-t">IR.Procname.t</a> <span>&#45;&gt;</span> <a href="../IR/Procdesc/index.html#type-t">IR.Procdesc.t</a></code></dt><dd><p>Create the procedure description for a concrete method</p></dd></dl><dl><dt class="spec value" id="val-create_empty_procdesc"><a href="#val-create_empty_procdesc" class="anchor"></a><code><span class="keyword">val</span> create_empty_procdesc : <a href="../IBase/SourceFile/index.html#type-t">IBase.SourceFile.t</a> <span>&#45;&gt;</span> <a href="../JavaFrontend/JProgramDesc/index.html#type-t">JavaFrontend.JProgramDesc.t</a> <span>&#45;&gt;</span> <a href="../JavaFrontend/JContext/index.html#type-icfg">JavaFrontend.JContext.icfg</a> <span>&#45;&gt;</span> <span>Javalib_pack.JCode.jcode Javalib_pack.Javalib.concrete_method</span> <span>&#45;&gt;</span> <a href="../IR/Procname/index.html#type-t">IR.Procname.t</a> <span>&#45;&gt;</span> <a href="../IR/Procdesc/index.html#type-t">IR.Procdesc.t</a></code></dt><dt class="spec value" id="val-create_cm_procdesc"><a href="#val-create_cm_procdesc" class="anchor"></a><code><span class="keyword">val</span> create_cm_procdesc : <a href="../IBase/SourceFile/index.html#type-t">IBase.SourceFile.t</a> <span>&#45;&gt;</span> <a href="../JavaFrontend/JProgramDesc/index.html#type-t">JavaFrontend.JProgramDesc.t</a> <span>&#45;&gt;</span> <a href="../JavaFrontend/JContext/index.html#type-icfg">JavaFrontend.JContext.icfg</a> <span>&#45;&gt;</span> <span>Javalib_pack.JCode.jcode Javalib_pack.Javalib.concrete_method</span> <span>&#45;&gt;</span> <a href="../IR/Procname/index.html#type-t">IR.Procname.t</a> <span>&#45;&gt;</span> <span><span>(<a href="../IR/Procdesc/index.html#type-t">IR.Procdesc.t</a> * <a href="../IR/Procdesc/Node/index.html#type-t">IR.Procdesc.Node.t</a> * <a href="../IR/Procdesc/Node/index.html#type-t">IR.Procdesc.Node.t</a> * <a href="../IR/Procdesc/Node/index.html#type-t">IR.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><dt class="spec value" id="val-instruction"><a href="#val-instruction" class="anchor"></a><code><span class="keyword">val</span> instruction : <a href="../JavaFrontend/JContext/index.html#type-t">JavaFrontend.JContext.t</a> <span>&#45;&gt;</span> int <span>&#45;&gt;</span> Sawja_pack.JBir.instr <span>&#45;&gt;</span> <a href="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><dt class="spec exception" id="exception-Frontend_error"><a href="#exception-Frontend_error" class="anchor"></a><code><span class="keyword">exception</span> </code><code><span class="exception">Frontend_error</span> <span class="keyword">of</span> string</code></dt></dl></div></body></html>