mirror of
https://github.com/c-cube/ocaml-containers.git
synced 2025-12-06 19:25:28 -05:00
2 lines
No EOL
7.5 KiB
HTML
2 lines
No EOL
7.5 KiB
HTML
<!DOCTYPE html>
|
||
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Event (containers.CCGraph.Traverse.Event)</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">containers</a></span></nav><header><h1><span class="keyword">Module</span> <span class="module-path">CCGraph.Traverse.Event</span></h1></header><div class="doc"><h3>More detailed interface</h3></div><div class="spec type" id="type-edge_kind"><a href="#type-edge_kind" class="anchor"></a><div class="def type"><code><span class="keyword">type </span>edge_kind</code><span class="keyword"> = </span><code>[ </code><table class="variant"><tr id="type-edge_kind.Forward" class="anchored"><td class="def constructor"><a href="#type-edge_kind.Forward" class="anchor"></a><code><span class="keyword">| </span></code><code>`Forward</code></td></tr><tr id="type-edge_kind.Back" class="anchored"><td class="def constructor"><a href="#type-edge_kind.Back" class="anchor"></a><code><span class="keyword">| </span></code><code>`Back</code></td></tr><tr id="type-edge_kind.Cross" class="anchored"><td class="def constructor"><a href="#type-edge_kind.Cross" class="anchor"></a><code><span class="keyword">| </span></code><code>`Cross</code></td></tr></table><code> ]</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>('v, 'e) t</code><span class="keyword"> = </span><code>[ </code><table class="variant"><tr id="type-t.Enter" class="anchored"><td class="def constructor"><a href="#type-t.Enter" class="anchor"></a><code><span class="keyword">| </span></code><code>`Enter<span class="keyword"> of </span><span class="type-var">'v</span><span class="keyword"> * </span>int<span class="keyword"> * </span>(<span class="type-var">'v</span>, <span class="type-var">'e</span>) <a href="../index.html#type-path">path</a></code></td></tr><tr id="type-t.Exit" class="anchored"><td class="def constructor"><a href="#type-t.Exit" class="anchor"></a><code><span class="keyword">| </span></code><code>`Exit<span class="keyword"> of </span><span class="type-var">'v</span></code></td></tr><tr id="type-t.Edge" class="anchored"><td class="def constructor"><a href="#type-t.Edge" class="anchor"></a><code><span class="keyword">| </span></code><code>`Edge<span class="keyword"> of </span><span class="type-var">'v</span><span class="keyword"> * </span><span class="type-var">'e</span><span class="keyword"> * </span><span class="type-var">'v</span><span class="keyword"> * </span><a href="index.html#type-edge_kind">edge_kind</a></code></td></tr></table><code> ]</code><code></code></div><div class="doc"><p>A traversal is a sequence of such events</p></div></div><div class="spec val" id="val-get_vertex"><a href="#val-get_vertex" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>get_vertex : (<span class="type-var">'v</span>, <span class="type-var">'e</span>) <a href="index.html#type-t">t</a> <span class="keyword">‑></span> (<span class="type-var">'v</span><span class="keyword"> * </span>[ `Enter | `Exit ]) option</code></div><div class="doc"></div></div><div class="spec val" id="val-get_enter"><a href="#val-get_enter" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>get_enter : (<span class="type-var">'v</span>, <span class="type-var">'e</span>) <a href="index.html#type-t">t</a> <span class="keyword">‑></span> <span class="type-var">'v</span> option</code></div><div class="doc"></div></div><div class="spec val" id="val-get_exit"><a href="#val-get_exit" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>get_exit : (<span class="type-var">'v</span>, <span class="type-var">'e</span>) <a href="index.html#type-t">t</a> <span class="keyword">‑></span> <span class="type-var">'v</span> option</code></div><div class="doc"></div></div><div class="spec val" id="val-get_edge"><a href="#val-get_edge" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>get_edge : (<span class="type-var">'v</span>, <span class="type-var">'e</span>) <a href="index.html#type-t">t</a> <span class="keyword">‑></span> (<span class="type-var">'v</span><span class="keyword"> * </span><span class="type-var">'e</span><span class="keyword"> * </span><span class="type-var">'v</span>) option</code></div><div class="doc"></div></div><div class="spec val" id="val-get_edge_kind"><a href="#val-get_edge_kind" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>get_edge_kind : (<span class="type-var">'v</span>, <span class="type-var">'e</span>) <a href="index.html#type-t">t</a> <span class="keyword">‑></span> (<span class="type-var">'v</span><span class="keyword"> * </span><span class="type-var">'e</span><span class="keyword"> * </span><span class="type-var">'v</span><span class="keyword"> * </span><a href="index.html#type-edge_kind">edge_kind</a>) option</code></div><div class="doc"></div></div><div class="spec val" id="val-dfs"><a href="#val-dfs" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>dfs : tbl:<span class="type-var">'v</span> <a href="../../index.html#type-set">set</a> <span class="keyword">‑></span> eq:(<span class="type-var">'v</span> <span class="keyword">‑></span> <span class="type-var">'v</span> <span class="keyword">‑></span> bool) <span class="keyword">‑></span> graph:(<span class="type-var">'v</span>, <span class="type-var">'e</span>) <a href="../../index.html#type-graph">graph</a> <span class="keyword">‑></span> <span class="type-var">'v</span> <a href="../../index.html#type-sequence">sequence</a> <span class="keyword">‑></span> (<span class="type-var">'v</span>, <span class="type-var">'e</span>) <a href="index.html#type-t">t</a> <a href="../../index.html#type-sequence_once">sequence_once</a></code></div><div class="doc"><p>Full version of DFS.</p><ul class="at-tag"><li><span class="at-tag parameter">Parameter</span> <span class="module-path">eq</span>: equality predicate on vertices.</li></ul></div></div><div class="spec val" id="val-dfs_tag"><a href="#val-dfs_tag" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>dfs_tag : eq:(<span class="type-var">'v</span> <span class="keyword">‑></span> <span class="type-var">'v</span> <span class="keyword">‑></span> bool) <span class="keyword">‑></span> tags:<span class="type-var">'v</span> <a href="../../index.html#type-tag_set">tag_set</a> <span class="keyword">‑></span> graph:(<span class="type-var">'v</span>, <span class="type-var">'e</span>) <a href="../../index.html#type-graph">graph</a> <span class="keyword">‑></span> <span class="type-var">'v</span> <a href="../../index.html#type-sequence">sequence</a> <span class="keyword">‑></span> (<span class="type-var">'v</span>, <span class="type-var">'e</span>) <a href="index.html#type-t">t</a> <a href="../../index.html#type-sequence_once">sequence_once</a></code></div><div class="doc"><p>Full version of DFS using integer tags.</p><ul class="at-tag"><li><span class="at-tag parameter">Parameter</span> <span class="module-path">eq</span>: equality predicate on vertices.</li></ul></div></div></body></html> |