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
8.2 KiB
3 lines
8.2 KiB
<!DOCTYPE html>
|
|
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>InferIR__Tenv (InferIR.InferIR__Tenv)</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> — <span class="package">package <a href="../index.html">InferIR</a></span></nav><header><h1><span class="keyword">Module</span> <span class="module-path">InferIR__Tenv</span></h1></header><p>Module for Type Environments.</p><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></code></div><div class="doc"><p>Type for type environment.</p></div></div><div class="spec val" id="val-create"><a href="#val-create" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>create : unit <span class="keyword">‑></span> <a href="index.html#type-t">t</a></code></div><div class="doc"><p>Create a new type environment.</p></div></div><div class="spec val" id="val-load"><a href="#val-load" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>load : <a href="../../InferBase/InferBase/SourceFile/index.html#type-t">InferBase.SourceFile.t</a> <span class="keyword">‑></span> <a href="index.html#type-t">t</a> option</code></div><div class="doc"><p>Load a type environment for a source file</p></div></div><div class="spec val" id="val-store_debug_file_for_source"><a href="#val-store_debug_file_for_source" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>store_debug_file_for_source : <a href="../../InferBase/InferBase/SourceFile/index.html#type-t">InferBase.SourceFile.t</a> <span class="keyword">‑></span> <a href="index.html#type-t">t</a> <span class="keyword">‑></span> unit</code></div><div class="doc"></div></div><div class="spec val" id="val-load_global"><a href="#val-load_global" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>load_global : unit <span class="keyword">‑></span> <a href="index.html#type-t">t</a> option</code></div><div class="doc"><p>load the global type environment (Java)</p></div></div><div class="spec val" id="val-store_global"><a href="#val-store_global" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>store_global : <a href="index.html#type-t">t</a> <span class="keyword">‑></span> unit</code></div><div class="doc"><p>save a global type environment (Java)</p></div></div><div class="spec val" id="val-lookup"><a href="#val-lookup" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>lookup : <a href="index.html#type-t">t</a> <span class="keyword">‑></span> <a href="../InferIR/Typ/Name/index.html#type-t">InferIR.Typ.Name.t</a> <span class="keyword">‑></span> <a href="../InferIR/Typ/Struct/index.html#type-t">InferIR.Typ.Struct.t</a> option</code></div><div class="doc"><p>Look up a name in the global type environment.</p></div></div><div class="spec val" id="val-mk_struct"><a href="#val-mk_struct" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>mk_struct : <a href="index.html#type-t">t</a> <span class="keyword">‑></span> ?⁠default:<a href="../InferIR/Typ/Struct/index.html#type-t">InferIR.Typ.Struct.t</a> <span class="keyword">‑></span> ?⁠fields:<a href="../InferIR/Typ/Struct/index.html#type-fields">InferIR.Typ.Struct.fields</a> <span class="keyword">‑></span> ?⁠statics:<a href="../InferIR/Typ/Struct/index.html#type-fields">InferIR.Typ.Struct.fields</a> <span class="keyword">‑></span> ?⁠methods:<a href="../InferIR/Typ/Procname/index.html#type-t">InferIR.Typ.Procname.t</a> list <span class="keyword">‑></span> ?⁠supers:<a href="../InferIR/Typ/Name/index.html#type-t">InferIR.Typ.Name.t</a> list <span class="keyword">‑></span> ?⁠annots:<a href="../InferIR/Annot/Item/index.html#type-t">InferIR.Annot.Item.t</a> <span class="keyword">‑></span> <a href="../InferIR/Typ/Name/index.html#type-t">InferIR.Typ.Name.t</a> <span class="keyword">‑></span> <a href="../InferIR/Typ/Struct/index.html#type-t">InferIR.Typ.Struct.t</a></code></div><div class="doc"><p>Construct a struct_typ, normalizing field types</p></div></div><div class="spec val" id="val-add_field"><a href="#val-add_field" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>add_field : <a href="index.html#type-t">t</a> <span class="keyword">‑></span> <a href="../InferIR/Typ/Name/index.html#type-t">InferIR.Typ.Name.t</a> <span class="keyword">‑></span> <a href="../InferIR/Typ/Struct/index.html#type-field">InferIR.Typ.Struct.field</a> <span class="keyword">‑></span> unit</code></div><div class="doc"><p>Add a field to a given struct in the global type environment.</p></div></div><div class="spec val" id="val-pp"><a href="#val-pp" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>pp : Format.formatter <span class="keyword">‑></span> <a href="index.html#type-t">t</a> <span class="keyword">‑></span> unit</code></div><div class="doc"><p>print a type environment</p></div></div><div class="spec val" id="val-language_is"><a href="#val-language_is" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>language_is : <a href="index.html#type-t">t</a> <span class="keyword">‑></span> <a href="../../InferBase/InferBase/Language/index.html#type-t">InferBase.Language.t</a> <span class="keyword">‑></span> bool</code></div><div class="doc"><p>Test the language from which the types in the tenv were translated</p></div></div><div class="spec type" id="type-per_file"><a href="#type-per_file" class="anchor"></a><div class="def type"><code><span class="keyword">type </span>per_file</code><code></code><code><span class="keyword"> = </span></code><table class="variant"><tr id="type-per_file.Global" class="anchored"><td class="def constructor"><a href="#type-per_file.Global" class="anchor"></a><code><span class="keyword">| </span></code><code><span class="constructor">Global</span></code></td></tr><tr id="type-per_file.FileLocal" class="anchored"><td class="def constructor"><a href="#type-per_file.FileLocal" class="anchor"></a><code><span class="keyword">| </span></code><code><span class="constructor">FileLocal</span><span class="keyword"> of </span><a href="index.html#type-t">t</a></code></td></tr></table><code></code></div><div class="doc"></div></div><div class="spec val" id="val-pp_per_file"><a href="#val-pp_per_file" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>pp_per_file : Format.formatter <span class="keyword">‑></span> <a href="index.html#type-per_file">per_file</a> <span class="keyword">‑></span> unit</code></div><div class="doc"><p>print per file type environment</p></div></div><div class="spec val" id="val-merge"><a href="#val-merge" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>merge : src:<a href="index.html#type-per_file">per_file</a> <span class="keyword">‑></span> dst:<a href="index.html#type-per_file">per_file</a> <span class="keyword">‑></span> <a href="index.html#type-per_file">per_file</a></code></div><div class="doc"><p>Best-effort merge of <code class="code">src</code> into <code class="code">dst</code>. If a procedure is both in <code class="code">dst</code> and <code class="code">src</code>, the one in
|
|
<code class="code">src</code> will get overwritten.</p></div></div><div class="spec module" id="module-SQLite"><a href="#module-SQLite" class="anchor"></a><div class="def module"><code><span class="keyword">module </span><a href="SQLite/index.html">SQLite</a> : <a href="../../InferBase/InferBase/SqliteUtils/index.html#module-type-Data">InferBase.SqliteUtils.Data</a><span class="keyword"> with </span><span class="keyword">type </span><a href="../../InferBase/InferBase/SqliteUtils/module-type-Data/index.html#type-t">t</a><span class="keyword"> = </span><a href="index.html#type-per_file">per_file</a></code></div><div class="doc"></div></div></body></html> |