moonpool/dev/ocaml/Inline_and_simplify_aux/Result/index.html
2023-08-28 17:11:38 +00:00

5 lines
No EOL
9.5 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Result (ocaml.Inline_and_simplify_aux.Result)</title><link rel="stylesheet" href="../../../_odoc-theme/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">ocaml</a> &#x00BB; <a href="../index.html">Inline_and_simplify_aux</a> &#x00BB; Result</nav><header class="odoc-preamble"><h1>Module <code><span>Inline_and_simplify_aux.Result</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span></code></div><div class="spec-doc"><p>Result structures approximately follow the evaluation order of the program. They are returned by the simplification algorithm acting on an Flambda subexpression.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-create"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create : <span>unit <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-approx"><a href="#val-approx" class="anchor"></a><code><span><span class="keyword">val</span> approx : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <a href="../../Simple_value_approx/index.html#type-t">Simple_value_approx.t</a></span></code></div><div class="spec-doc"><p>The approximation of the subexpression that has just been simplified.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-set_approx"><a href="#val-set_approx" class="anchor"></a><code><span><span class="keyword">val</span> set_approx : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../../Simple_value_approx/index.html#type-t">Simple_value_approx.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Set the approximation of the subexpression that has just been simplified. Typically used just before returning from a case of the simplification algorithm.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-meet_approx"><a href="#val-meet_approx" class="anchor"></a><code><span><span class="keyword">val</span> meet_approx : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../../Simple_value_approx/index.html#type-t">Simple_value_approx.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Set the approximation of the subexpression to the meet of the current return approximation and the provided one. Typically used just before returning from a branch case of the simplification algorithm.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-used_static_exceptions"><a href="#val-used_static_exceptions" class="anchor"></a><code><span><span class="keyword">val</span> used_static_exceptions : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <a href="../../Static_exception/Set/index.html#type-t">Static_exception.Set.t</a></span></code></div><div class="spec-doc"><p>All static exceptions for which <code>use_staticfail</code> has been called on the given result structure.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-use_static_exception"><a href="#val-use_static_exception" class="anchor"></a><code><span><span class="keyword">val</span> use_static_exception : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../../Static_exception/index.html#type-t">Static_exception.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Mark that the given static exception has been used.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-exit_scope_catch"><a href="#val-exit_scope_catch" class="anchor"></a><code><span><span class="keyword">val</span> exit_scope_catch : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../../Static_exception/index.html#type-t">Static_exception.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Mark that we are moving up out of the scope of a static-catch block that catches the given static exception identifier. This has the effect of removing the identifier from the <code>used_staticfail</code> set.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-benefit"><a href="#val-benefit" class="anchor"></a><code><span><span class="keyword">val</span> benefit : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <a href="../../Inlining_cost/Benefit/index.html#type-t">Inlining_cost.Benefit.t</a></span></code></div><div class="spec-doc"><p>The benefit to be gained by inlining the subexpression whose simplification yielded the given result structure.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-map_benefit"><a href="#val-map_benefit" class="anchor"></a><code><span><span class="keyword">val</span> map_benefit :
<span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span>
<span><span>(<span><a href="../../Inlining_cost/Benefit/index.html#type-t">Inlining_cost.Benefit.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="../../Inlining_cost/Benefit/index.html#type-t">Inlining_cost.Benefit.t</a>)</span> <span class="arrow">&#45;&gt;</span></span>
<a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Apply a transformation to the inlining benefit stored within the given result structure.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_benefit"><a href="#val-add_benefit" class="anchor"></a><code><span><span class="keyword">val</span> add_benefit : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../../Inlining_cost/Benefit/index.html#type-t">Inlining_cost.Benefit.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Add some benefit to the inlining benefit stored within the given result structure.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-reset_benefit"><a href="#val-reset_benefit" class="anchor"></a><code><span><span class="keyword">val</span> reset_benefit : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Set the benefit of inlining the subexpression corresponding to the given result structure to zero.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-set_inlining_threshold"><a href="#val-set_inlining_threshold" class="anchor"></a><code><span><span class="keyword">val</span> set_inlining_threshold : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><span><a href="../../Inlining_cost/Threshold/index.html#type-t">Inlining_cost.Threshold.t</a> option</span> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_inlining_threshold"><a href="#val-add_inlining_threshold" class="anchor"></a><code><span><span class="keyword">val</span> add_inlining_threshold : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../../Inlining_cost/Threshold/index.html#type-t">Inlining_cost.Threshold.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-sub_inlining_threshold"><a href="#val-sub_inlining_threshold" class="anchor"></a><code><span><span class="keyword">val</span> sub_inlining_threshold : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../../Inlining_cost/Threshold/index.html#type-t">Inlining_cost.Threshold.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-inlining_threshold"><a href="#val-inlining_threshold" class="anchor"></a><code><span><span class="keyword">val</span> inlining_threshold : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../../Inlining_cost/Threshold/index.html#type-t">Inlining_cost.Threshold.t</a> option</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-seen_direct_application"><a href="#val-seen_direct_application" class="anchor"></a><code><span><span class="keyword">val</span> seen_direct_application : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-num_direct_applications"><a href="#val-num_direct_applications" class="anchor"></a><code><span><span class="keyword">val</span> num_direct_applications : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> int</span></code></div></div></div></body></html>