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.
|
|
|
|
<!DOCTYPE html>
|
|
|
|
|
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Pulselib__PulseInterproc (infer.Pulselib__PulseInterproc)</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> » Pulselib__PulseInterproc</nav><h1>Module <code>Pulselib__PulseInterproc</code></h1></header><dl><dt class="spec value" id="val-apply_prepost"><a href="#val-apply_prepost" class="anchor"></a><code><span class="keyword">val</span> apply_prepost : <span>is_isl_error_prepost:bool</span> <span>-></span> <a href="../IR/Procname/index.html#type-t">IR.Procname.t</a> <span>-></span> <a href="../IBase/Location/index.html#type-t">IBase.Location.t</a> <span>-></span> <span>callee_prepost:<a href="../Pulselib/PulseAbductiveDomain/index.html#type-t">Pulselib.PulseDomainInterface.AbductiveDomain.t</a></span> <span>-></span> <span>captured_vars_with_actuals:<span><span>(<a href="../IR/Var/index.html#type-t">IR.Var.t</a> * <span>(<a href="../Pulselib/PulseAbstractValue/index.html#type-t">Pulselib.PulseBasicInterface.AbstractValue.t</a> * <a href="../Pulselib/PulseValueHistory/index.html#type-t">Pulselib.PulseBasicInterface.ValueHistory.t</a>)</span>)</span> list</span></span> <span>-></span> <span>formals:<span><a href="../IR/Var/index.html#type-t">IR.Var.t</a> list</span></span> <span>-></span> <span>actuals:<span><span>(<span>(<a href="../Pulselib/PulseAbstractValue/index.html#type-t">Pulselib.PulseBasicInterface.AbstractValue.t</a> * <a href="../Pulselib/PulseValueHistory/index.html#type-t">Pulselib.PulseBasicInterface.ValueHistory.t</a>)</span> * <a href="../IR/Typ/index.html#type-t">IR.Typ.t</a>)</span> list</span></span> <span>-></span> <a href="../Pulselib/PulseAbductiveDomain/index.html#type-t">Pulselib.PulseDomainInterface.AbductiveDomain.t</a> <span>-></span> <span><span><span>(<a href="../Pulselib/PulseAbductiveDomain/index.html#type-t">Pulselib.PulseDomainInterface.AbductiveDomain.t</a> * <span><span>(<a href="../Pulselib/PulseAbstractValue/index.html#type-t">Pulselib.PulseBasicInterface.AbstractValue.t</a> * <a href="../Pulselib/PulseValueHistory/index.html#type-t">Pulselib.PulseBasicInterface.ValueHistory.t</a>)</span> option</span> * <span><span>(<a href="../Pulselib/PulseAbstractValue/index.html#type-t">Pulselib.PulseBasicInterface.AbstractValue.t</a> * <a href="../Pulselib/PulseValueHistory/index.html#type-t">Pulselib.PulseBasicInterface.ValueHistory.t</a>)</span> <a href="../Pulselib__PulseAbstractValue/index.html#module-Map">Pulselib.PulseBasicInterface.AbstractValue.Map</a>.t</span>)</span> <a href="../Pulselib/PulseAccessResult/index.html#type-t">Pulselib.PulseDomainInterface.AccessResult.t</a></span> <a href="../Pulselib/PulseSatUnsat/index.html#type-t">Pulselib.PulseBasicInterface.SatUnsat.t</a></span></code></dt><dd><p>result of applying one pre/post pair of a callee's summary:</p><ul><li><span class="xref-unresolved" title="unresolved reference to "SatUnsat.Unsat""><code>SatUnsat</code>.Unsat</span> if that path in the callee is infeasible</li><li>otherwise, there can be an error detected</li><li>otherwise, the result is a new abstract state, an optional return value, and a substitution <code>callee_abstract_value -> caller_abstract_value</code> mapping callee's abstract values to what they became in the new (caller) state</li></ul></dd></dl></div></body></html>
|