ocaml-containers/2.0/containers.data/CCHashTrie/index.html
2018-01-21 15:48:04 -06:00

6 lines
No EOL
4.3 KiB
HTML

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>CCHashTrie (containers.data.CCHashTrie)</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">containers.data</a></span></nav><header><h1><span class="keyword">Module</span> <span class="module-path">CCHashTrie</span></h1></header><h2>Hash Tries</h2><p>Trie indexed by the hash of the keys, where the branching factor is fixed.
The goal is to have a quite efficient functional structure with fast
update and access <b>if</b> the hash function is good.
The trie is not binary, to improve cache locality and decrease depth.</p><p>Preliminary benchmarks (see the &quot;tbl&quot; section of benchmarks) tend to show
that this type is quite efficient for small data sets.</p><p><b>status: unstable</b></p><ul class="at-tag"><li><span class="at-tag since">Since</span>: 0.13</li></ul><div class="spec type" id="type-sequence"><a href="#type-sequence" class="anchor"></a><div class="def type"><code><span class="keyword">type </span>'a sequence</code><code><span class="keyword"> = </span>(<span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> unit) <span class="keyword">&#8209;&gt;</span> unit</code><code></code></div><div class="doc"></div></div><div class="spec type" id="type-gen"><a href="#type-gen" class="anchor"></a><div class="def type"><code><span class="keyword">type </span>'a gen</code><code><span class="keyword"> = </span>unit <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> option</code><code></code></div><div class="doc"></div></div><div class="spec type" id="type-printer"><a href="#type-printer" class="anchor"></a><div class="def type"><code><span class="keyword">type </span>'a printer</code><code><span class="keyword"> = </span>Format.formatter <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> unit</code><code></code></div><div class="doc"></div></div><div class="spec type" id="type-ktree"><a href="#type-ktree" class="anchor"></a><div class="def type"><code><span class="keyword">type </span>'a ktree</code><code><span class="keyword"> = </span>unit <span class="keyword">&#8209;&gt;</span> [ `Nil | `Node of <span class="type-var">'a</span><span class="keyword"> * </span><span class="type-var">'a</span> <a href="index.html#type-ktree">ktree</a> list ]</code><code></code></div><div class="doc"></div></div><div class="spec module" id="module-Transient"><a href="#module-Transient" class="anchor"></a><div class="def module"><code><span class="keyword">module </span><a href="Transient/index.html">Transient</a> : <span class="keyword">sig</span> ... <span class="keyword">end</span></code></div><div class="doc"><h3>Transient Identifiers</h3></div></div><div class="spec module-type" id="module-type-S"><a href="#module-type-S" class="anchor"></a><div class="def module-type"><code><span class="keyword">module type </span><a href="module-type-S/index.html">S</a> : <span class="keyword">sig</span> ... <span class="keyword">end</span></code></div><div class="doc"><h3>Signature</h3></div></div><div class="spec module-type" id="module-type-KEY"><a href="#module-type-KEY" class="anchor"></a><div class="def module-type"><code><span class="keyword">module type </span><a href="module-type-KEY/index.html">KEY</a> : <span class="keyword">sig</span> ... <span class="keyword">end</span></code></div><div class="doc"><h3>Type for keys</h3></div></div><div class="spec module" id="module-Make"><a href="#module-Make" class="anchor"></a><div class="def module"><code><span class="keyword">module </span><a href="Make/index.html">Make</a> : <span class="keyword">functor</span> (<a href="Make/argument-1-K/index.html">K</a> : <a href="index.html#module-type-KEY">KEY</a>) -&gt; <a href="index.html#module-type-S">S</a><span class="keyword"> with </span><span class="keyword">type </span><a href="Make/index.html#type-key">key</a><span class="keyword"> = </span><a href="Make/argument-1-K/index.html#type-t">K.t</a></code></div><div class="doc"><h3>Functors</h3></div></div></body></html>