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.

2 lines
14 KiB

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>StarvationModels (infer.Concurrency.StarvationModels)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 1.5.2"/><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; <a href="../index.html">Concurrency</a> &#x00BB; StarvationModels</nav><h1>Module <code>Concurrency.StarvationModels</code></h1></header><dl><dt class="spec value" id="val-may_block"><a href="#val-may_block" class="anchor"></a><code><span class="keyword">val</span> may_block : <a href="../../IR/Tenv/index.html#type-t">IR.Tenv.t</a> <span>&#45;&gt;</span> <a href="../../IR/Procname/index.html#type-t">IR.Procname.t</a> <span>&#45;&gt;</span> <span><a href="../../Absint/HilExp/index.html#type-t">Absint.HilExp.t</a> list</span> <span>&#45;&gt;</span> bool</code></dt><dd><p>is the method call potentially blocking, given the actuals passed?</p></dd></dl><dl><dt class="spec value" id="val-may_do_ipc"><a href="#val-may_do_ipc" class="anchor"></a><code><span class="keyword">val</span> may_do_ipc : <a href="../../IR/Tenv/index.html#type-t">IR.Tenv.t</a> <span>&#45;&gt;</span> <a href="../../IR/Procname/index.html#type-t">IR.Procname.t</a> <span>&#45;&gt;</span> <span><a href="../../Absint/HilExp/index.html#type-t">Absint.HilExp.t</a> list</span> <span>&#45;&gt;</span> bool</code></dt><dt class="spec value" id="val-is_strict_mode_violation"><a href="#val-is_strict_mode_violation" class="anchor"></a><code><span class="keyword">val</span> is_strict_mode_violation : <a href="../../IR/Tenv/index.html#type-t">IR.Tenv.t</a> <span>&#45;&gt;</span> <a href="../../IR/Procname/index.html#type-t">IR.Procname.t</a> <span>&#45;&gt;</span> <span><a href="../../Absint/HilExp/index.html#type-t">Absint.HilExp.t</a> list</span> <span>&#45;&gt;</span> bool</code></dt><dt class="spec value" id="val-is_monitor_wait"><a href="#val-is_monitor_wait" class="anchor"></a><code><span class="keyword">val</span> is_monitor_wait : <a href="../../IR/Tenv/index.html#type-t">IR.Tenv.t</a> <span>&#45;&gt;</span> <a href="../../IR/Procname/index.html#type-t">IR.Procname.t</a> <span>&#45;&gt;</span> <span><a href="../../Absint/HilExp/index.html#type-t">Absint.HilExp.t</a> list</span> <span>&#45;&gt;</span> bool</code></dt><dt class="spec value" id="val-is_synchronized_library_call"><a href="#val-is_synchronized_library_call" class="anchor"></a><code><span class="keyword">val</span> is_synchronized_library_call : <a href="../../IR/Tenv/index.html#type-t">IR.Tenv.t</a> <span>&#45;&gt;</span> <a href="../../IR/Procname/index.html#type-t">IR.Procname.t</a> <span>&#45;&gt;</span> bool</code></dt><dd><p>does the method call lock-then-unlock the underlying object? legacy Java containers like Vector do this, and can interact with explicit locking</p></dd></dl><dl><dt class="spec value" id="val-should_skip_analysis"><a href="#val-should_skip_analysis" class="anchor"></a><code><span class="keyword">val</span> should_skip_analysis : <a href="../../IR/Tenv/index.html#type-t">IR.Tenv.t</a> <span>&#45;&gt;</span> <a href="../../IR/Procname/index.html#type-t">IR.Procname.t</a> <span>&#45;&gt;</span> <span><a href="../../Absint/HilExp/index.html#type-t">Absint.HilExp.t</a> list</span> <span>&#45;&gt;</span> bool</code></dt><dd><p>should we treat a method call as skip (eg library methods in guava) to avoid FPs?</p></dd></dl><dl><dt class="spec value" id="val-is_annotated_nonblocking"><a href="#val-is_annotated_nonblocking" class="anchor"></a><code><span class="keyword">val</span> is_annotated_nonblocking : <a href="../../IR/Tenv/index.html#type-t">IR.Tenv.t</a> <span>&#45;&gt;</span> <a href="../../IR/Procname/index.html#type-t">IR.Procname.t</a> <span>&#45;&gt;</span> bool</code></dt><dd><p>is procedure transitively annotated <code>@Nonblocking</code></p></dd></dl