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
23 KiB

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>InferModules__LithoDomain (infer.InferModules__LithoDomain)</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__LithoDomain</span></h1></header><div class="spec module" id="module-F"><a href="#module-F" class="anchor"></a><div class="def module"><code><span class="keyword">module </span>F = Format</code></div><div class="doc"></div></div><div class="spec module" id="module-LocalAccessPath"><a href="#module-LocalAccessPath" class="anchor"></a><div class="def module"><code><span class="keyword">module </span><a href="LocalAccessPath/index.html">LocalAccessPath</a> : <span class="keyword">sig</span> ... <span class="keyword">end</span></code></div><div class="doc"><p>Access path + its parent procedure</p></div></div><div class="spec module" id="module-MethodCall"><a href="#module-MethodCall" class="anchor"></a><div class="def module"><code><span class="keyword">module </span><a href="MethodCall/index.html">MethodCall</a> : <span class="keyword">sig</span> ... <span class="keyword">end</span></code></div><div class="doc"><p>Called procedure + its receiver</p></div></div><div class="spec module" id="module-CallSet"><a href="#module-CallSet" class="anchor"></a><div class="def module"><code><span class="keyword">module </span><a href="CallSet/index.html">CallSet</a> : <span class="keyword">module type of </span><span class="keyword">sig</span> ... <span class="keyword">end</span></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">module type of </span><span class="keyword">sig</span> ... <span class="keyword">end</span></code></span></summary><div class="spec type" id="type-key"><a href="#type-key" class="anchor"></a><div class="def type"><code><span class="keyword">type </span>key</code><code><span class="keyword"> = </span><a href="LocalAccessPath/index.html#type-t">LocalAccessPath.t</a></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>'a t</code><code><span class="keyword"> = </span><span class="type-var">'a</span> <a href="../../InferStdlib/InferStdlib__PrettyPrintable/index.html#module-MakePPMap">InferStdlib__PrettyPrintable.MakePPMap(LocalAccessPath)</a>.t</code><code></code></div><div class="doc"></div></div><div class="spec val" id="val-mem"><a href="#val-mem" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>mem : <a href="index.html#type-key">key</a> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <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-add"><a href="#val-add" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>add : <a href="index.html#type-key">key</a> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <a href="index.html#type-t">t</a> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <a href="index.html#type-t">t</a></code></div><div class="doc"></div></div><div class="spec val" id="val-update"><a href="#val-update" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>update : <a href="index.html#type-key">key</a> <span class="keyword">&#8209;&gt;</span> (<span class="type-var">'a</span> option <span class="keyword">&#8209;&gt;</span> <span class="type-var">'
original access path is retained; otherwise, the new one is used</p></div></div><div class="spec val" id="val-iter_call_chains"><a href="#val-iter_call_chains" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>iter_call_chains : f:(<a href="../../InferIR/InferIR/AccessPath/index.html#type-t">InferIR.AccessPath.t</a> <span class="keyword">&#8209;&gt;</span> <a href="../../InferIR/InferIR/Typ/Procname/index.html#type-t">InferIR.Typ.Procname.t</a> list <span class="keyword">&#8209;&gt;</span> unit) <span class="keyword">&#8209;&gt;</span> <a href="index.html#type-astate">astate</a> <span class="keyword">&#8209;&gt;</span> unit</code></div><div class="doc"><p>Apply <code class="code">f</code> to each maximal call chain encoded in <code class="code">astate</code></p></div></div></body></html>