ocaml-containers/2.2/containers/Containers/Hashtbl/index.html
2018-05-10 23:14:25 -05:00

22 lines
No EOL
29 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. 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>Hashtbl (containers.Containers.Hashtbl)</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</a></span></nav><header><h1><span class="keyword">Module</span> <span class="module-path">Containers.Hashtbl</span></h1></header><div class="doc"><ul class="at-tag"><li><span class="at-tag since">Since</span>: 0.14</li></ul></div><div class="spec include"><div class="doc"></div><details open="open"><summary><span class="def"><code><span class="keyword">include </span><span class="keyword">module type of </span>Hashtbl<span class="keyword"> with </span><span class="keyword">type </span><a href="../index.html#module-Hashtbl">Hashtbl</a>.statistics<span class="keyword"> = </span>Hashtbl.statistics<span class="keyword"> and </span><span class="keyword">module </span><a href="../index.html#module-Hashtbl">Hashtbl</a>.Make = Hashtbl.Make<span class="keyword"> and </span><span class="keyword">type </span>('a, 'b) <a href="../index.html#module-Hashtbl">Hashtbl</a>.t<span class="keyword"> = </span>(<span class="type-var">'a</span>, <span class="type-var">'b</span>) Hashtbl.t</code></span></summary><div class="spec type" id="type-t"><a href="#type-t" class="anchor"></a><div class="def type"><code><span class="keyword">type </span>('a, 'b) t</code><code><span class="keyword"> = </span>(<span class="type-var">'a</span>, <span class="type-var">'b</span>) Hashtbl.t</code><code></code></div><div class="doc"></div></div><div class="spec val" id="val-create"><a href="#val-create" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>create : ?&#8288;random:bool <span class="keyword">&#8209;&gt;</span> int <span class="keyword">&#8209;&gt;</span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a></code></div><div class="doc"></div></div><div class="spec val" id="val-clear"><a href="#val-clear" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>clear : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span class="keyword">&#8209;&gt;</span> unit</code></div><div class="doc"></div></div><div class="spec val" id="val-reset"><a href="#val-reset" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>reset : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span class="keyword">&#8209;&gt;</span> unit</code></div><div class="doc"></div></div><div class="spec val" id="val-copy"><a href="#val-copy" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>copy : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span class="keyword">&#8209;&gt;</span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a></code></div><div class="doc"></div></div><div class="spec val" id="val-add"><a href="#val-add" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>add : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'b</span> <span class="keyword">&#8209;&gt;</span> unit</code></div><div class="doc"></div></div><div class="spec val" id="val-find"><a href="#val-find" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>find : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'b</span></code></div><div class="doc"></div></div><div class="spec val" id="val-find_opt"><a href="#val-find_opt" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>find_opt : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'b</span> option</code></div><div class="doc"></div></div><div class="spec val" id="val-find_all"><a href="#val-find_all" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>find_all : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'b</span> list</code></div><div class="doc"></div></div><div class="spec val" id="val-mem"><a href="#val-mem" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>mem : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> bool</code></div><div class="doc"></div></div><div class="spec val" id="val-remove"><a href="#val-remove" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>remove : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> unit</code></div><div class="doc"></div></div><div class="spec val" id="val-replace"><a href="#val-replace" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>replace : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'b</span> <span class="keyword">&#8209;&gt;</span> unit</code></div><div class="doc"></div></div><div class="spec val" id="val-iter"><a href="#val-iter" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>iter : (<span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'b</span> <span class="keyword">&#8209;&gt;</span> unit) <span class="keyword">&#8209;&gt;</span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span class="keyword">&#8209;&gt;</span> unit</code></div><div class="doc"></div></div><div class="spec val" id="val-filter_map_inplace"><a href="#val-filter_map_inplace" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>filter_map_inplace : (<span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'b</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'b</span> option) <span class="keyword">&#8209;&gt;</span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span class="keyword">&#8209;&gt;</span> unit</code></div><div class="doc"></div></div><div class="spec val" id="val-fold"><a href="#val-fold" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>fold : (<span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'b</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'c</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'c</span>) <span class="keyword">&#8209;&gt;</span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'c</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'c</span></code></div><div class="doc"></div></div><div class="spec val" id="val-length"><a href="#val-length" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>length : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span class="keyword">&#8209;&gt;</span> int</code></div><div class="doc"></div></div><div class="spec val" id="val-randomize"><a href="#val-randomize" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>randomize : unit <span class="keyword">&#8209;&gt;</span> unit</code></div><div class="doc"></div></div><div class="spec val" id="val-is_randomized"><a href="#val-is_randomized" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>is_randomized : unit <span class="keyword">&#8209;&gt;</span> bool</code></div><div class="doc"></div></div><div class="spec type" id="type-statistics"><a href="#type-statistics" class="anchor"></a><div class="def type"><code><span class="keyword">type </span>statistics</code><code><span class="keyword"> = </span>Hashtbl.statistics</code><code><span class="keyword"> = </span></code><code>{</code><table class="record"><tr id="type-statistics.num_bindings" class="anchored"><td class="def field"><a href="#type-statistics.num_bindings" class="anchor"></a><code>num_bindings : int;</code></td></tr><tr id="type-statistics.num_buckets" class="anchored"><td class="def field"><a href="#type-statistics.num_buckets" class="anchor"></a><code>num_buckets : int;</code></td></tr><tr id="type-statistics.max_bucket_length" class="anchored"><td class="def field"><a href="#type-statistics.max_bucket_length" class="anchor"></a><code>max_bucket_length : int;</code></td></tr><tr id="type-statistics.bucket_histogram" class="anchored"><td class="def field"><a href="#type-statistics.bucket_histogram" class="anchor"></a><code>bucket_histogram : int array;</code></td></tr></table><code>}</code><code></code></div><div class="doc"></div></div><div class="spec val" id="val-stats"><a href="#val-stats" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>stats : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span class="keyword">&#8209;&gt;</span> <a href="index.html#type-statistics">statistics</a></code></div><div class="doc"></div></div><div class="spec module-type" id="module-type-HashedType"><a href="#module-type-HashedType" class="anchor"></a><div class="def module-type"><code><span class="keyword">module type </span><a href="module-type-HashedType/index.html">HashedType</a> : <span class="keyword">sig</span> ... <span class="keyword">end</span></code></div><div class="doc"></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"></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/index.html#argument-1-H">H</a> : Hashtbl.HashedType) -&gt; <span class="keyword">sig</span> ... <span class="keyword">end</span></code></div><div class="doc"></div></div><div class="spec module-type" id="module-type-SeededHashedType"><a href="#module-type-SeededHashedType" class="anchor"></a><div class="def module-type"><code><span class="keyword">module type </span><a href="module-type-SeededHashedType/index.html">SeededHashedType</a> : <span class="keyword">sig</span> ... <span class="keyword">end</span></code></div><div class="doc"></div></div><div class="spec module-type" id="module-type-SeededS"><a href="#module-type-SeededS" class="anchor"></a><div class="def module-type"><code><span class="keyword">module type </span><a href="module-type-SeededS/index.html">SeededS</a> : <span class="keyword">sig</span> ... <span class="keyword">end</span></code></div><div class="doc"></div></div><div class="spec module" id="module-MakeSeeded"><a href="#module-MakeSeeded" class="anchor"></a><div class="def module"><code><span class="keyword">module </span><a href="MakeSeeded/index.html">MakeSeeded</a> : <span class="keyword">functor</span> (<a href="MakeSeeded/argument-1-H/index.html">H</a> : <a href="index.html#module-type-SeededHashedType">SeededHashedType</a>) -&gt; <span class="keyword">sig</span> ... <span class="keyword">end</span></code></div><div class="doc"></div></div><div class="spec val" id="val-hash"><a href="#val-hash" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>hash : <span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> int</code></div><div class="doc"></div></div><div class="spec val" id="val-seeded_hash"><a href="#val-seeded_hash" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>seeded_hash : int <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> int</code></div><div class="doc"></div></div><div class="spec val" id="val-hash_param"><a href="#val-hash_param" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>hash_param : int <span class="keyword">&#8209;&gt;</span> int <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> int</code></div><div class="doc"></div></div><div class="spec val" id="val-seeded_hash_param"><a href="#val-seeded_hash_param" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>seeded_hash_param : int <span class="keyword">&#8209;&gt;</span> int <span class="keyword">&#8209;&gt;</span> int <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> int</code></div><div class="doc"></div></div></details></div><div class="spec include"><div class="doc"></div><details open="open"><summary><span class="def"><code><span class="keyword">include </span><a href="../../CCHashtbl/index.html#module-Poly">CCHashtbl.Poly</a></code></span></summary><div class="spec val" id="val-get"><a href="#val-get" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>get : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Hashtbl.t <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'b</span> option</code></div><div class="doc"><p>Safe version of <span class="xref-unresolved" title="unresolved reference to &quot;Hashtbl.find&quot;"><a href="../index.html#module-Hashtbl">Hashtbl</a>.find</span>.</p></div></div><div class="spec val" id="val-get_or"><a href="#val-get_or" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>get_or : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Hashtbl.t <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> default:<span class="type-var">'b</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'b</span></code></div><div class="doc"><p><code class="code">get_or tbl k ~default</code> returns the value associated to <code class="code">k</code> if present,
and returns <code class="code">default</code> otherwise (if <code class="code">k</code> doesn't belong in <code class="code">tbl</code>).</p><ul class="at-tag"><li><span class="at-tag since">Since</span>: 0.16</li></ul></div></div><div class="spec val" id="val-keys"><a href="#val-keys" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>keys : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Hashtbl.t <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <a href="../../CCHashtbl/index.html#type-sequence">CCHashtbl.sequence</a></code></div><div class="doc"><p>Iterate on keys (similar order as <span class="xref-unresolved" title="unresolved reference to &quot;Hashtbl.iter&quot;"><a href="../index.html#module-Hashtbl">Hashtbl</a>.iter</span>).</p></div></div><div class="spec val" id="val-values"><a href="#val-values" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>values : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Hashtbl.t <span class="keyword">&#8209;&gt;</span> <span class="type-var">'b</span> <a href="../../CCHashtbl/index.html#type-sequence">CCHashtbl.sequence</a></code></div><div class="doc"><p>Iterate on values in the table.</p></div></div><div class="spec val" id="val-keys_list"><a href="#val-keys_list" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>keys_list : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Hashtbl.t <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> list</code></div><div class="doc"><p><code class="code">keys_list t</code> is the list of keys in <code class="code">t</code>.
If the key is in the Hashtable multiple times, all occurrences will be returned.</p><ul class="at-tag"><li><span class="at-tag since">Since</span>: 0.8</li></ul></div></div><div class="spec val" id="val-values_list"><a href="#val-values_list" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>values_list : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Hashtbl.t <span class="keyword">&#8209;&gt;</span> <span class="type-var">'b</span> list</code></div><div class="doc"><p><code class="code">values_list t</code> is the list of values in <code class="code">t</code>.</p><ul class="at-tag"><li><span class="at-tag since">Since</span>: 0.8</li></ul></div></div><div class="spec val" id="val-map_list"><a href="#val-map_list" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>map_list : (<span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'b</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'c</span>) <span class="keyword">&#8209;&gt;</span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Hashtbl.t <span class="keyword">&#8209;&gt;</span> <span class="type-var">'c</span> list</code></div><div class="doc"><p>Map on a hashtable's items, collect into a list.</p></div></div><div class="spec val" id="val-incr"><a href="#val-incr" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>incr : ?&#8288;by:int <span class="keyword">&#8209;&gt;</span> (<span class="type-var">'a</span>, int) Hashtbl.t <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> unit</code></div><div class="doc"><p><code class="code">incr ?by tbl x</code> increments or initializes the counter associated with <code class="code">x</code>.
If <code class="code">get tbl x = None</code>, then after update, <code class="code">get tbl x = Some 1</code>;
otherwise, if <code class="code">get tbl x = Some n</code>, now <code class="code">get tbl x = Some (n+1)</code>.</p><ul class="at-tag"><li><span class="at-tag parameter">Parameter</span> <span class="module-path">by</span>: if specified, the int value is incremented by <code class="code">by</code> rather than 1.</li><li><span class="at-tag since">Since</span>: 0.16</li></ul></div></div><div class="spec val" id="val-decr"><a href="#val-decr" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>decr : ?&#8288;by:int <span class="keyword">&#8209;&gt;</span> (<span class="type-var">'a</span>, int) Hashtbl.t <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> unit</code></div><div class="doc"><p>Like <a href="index.html#val-incr">incr</a> but subtract 1 (or the value of <code class="code">by</code>).
If the value reaches 0, the key is removed from the table.
This does nothing if the key is not already present in the table.</p><ul class="at-tag"><li><span class="at-tag since">Since</span>: 0.16</li></ul></div></div><div class="spec val" id="val-to_seq"><a href="#val-to_seq" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>to_seq : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Hashtbl.t <span class="keyword">&#8209;&gt;</span> (<span class="type-var">'a</span><span class="keyword"> * </span><span class="type-var">'b</span>) <a href="../../CCHashtbl/index.html#type-sequence">CCHashtbl.sequence</a></code></div><div class="doc"><p>Iterate on bindings in the table.</p></div></div><div class="spec val" id="val-add_list"><a href="#val-add_list" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>add_list : (<span class="type-var">'a</span>, <span class="type-var">'b</span> list) Hashtbl.t <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'b</span> <span class="keyword">&#8209;&gt;</span> unit</code></div><div class="doc"><p><code class="code">add_list tbl x y</code> adds <code class="code">y</code> to the list <code class="code">x</code> is bound to. If <code class="code">x</code> is
not bound, it becomes bound to <code class="code">y</code>.</p><ul class="at-tag"><li><span class="at-tag since">Since</span>: 0.16</li></ul></div></div><div class="spec val" id="val-add_seq"><a href="#val-add_seq" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>add_seq : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Hashtbl.t <span class="keyword">&#8209;&gt;</span> (<span class="type-var">'a</span><span class="keyword"> * </span><span class="type-var">'b</span>) <a href="../../CCHashtbl/index.html#type-sequence">CCHashtbl.sequence</a> <span class="keyword">&#8209;&gt;</span> unit</code></div><div class="doc"><p>Add the corresponding pairs to the table, using <span class="xref-unresolved" title="unresolved reference to &quot;Hashtbl.add&quot;"><a href="../index.html#module-Hashtbl">Hashtbl</a>.add</span>.</p><ul class="at-tag"><li><span class="at-tag since">Since</span>: 0.16</li></ul></div></div><div class="spec val" id="val-of_seq"><a href="#val-of_seq" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>of_seq : (<span class="type-var">'a</span><span class="keyword"> * </span><span class="type-var">'b</span>) <a href="../../CCHashtbl/index.html#type-sequence">CCHashtbl.sequence</a> <span class="keyword">&#8209;&gt;</span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Hashtbl.t</code></div><div class="doc"><p>From the given bindings, added in order.</p></div></div><div class="spec val" id="val-add_seq_count"><a href="#val-add_seq_count" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>add_seq_count : (<span class="type-var">'a</span>, int) Hashtbl.t <span class="keyword">&#8209;&gt;</span> <span class="type-var">'a</span> <a href="../../CCHashtbl/index.html#type-sequence">CCHashtbl.sequence</a> <span class="keyword">&#8209;&gt;</span> unit</code></div><div class="doc"><p><code class="code">add_seq_count tbl seq</code> increments the count of each element of <code class="code">seq</code>
by calling <a href="index.html#val-incr">incr</a>. This is useful for counting how many times each
element of <code class="code">seq</code> occurs.</p><ul class="at-tag"><li><span class="at-tag since">Since</span>: 0.16</li></ul></div></div><div class="spec val" id="val-of_seq_count"><a href="#val-of_seq_count" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>of_seq_count : <span class="type-var">'a</span> <a href="../../CCHashtbl/index.html#type-sequence">CCHashtbl.sequence</a> <span class="keyword">&#8209;&gt;</span> (<span class="type-var">'a</span>, int) Hashtbl.t</code></div><div class="doc"><p>Like <a href="index.html#val-add_seq_count">add_seq_count</a>, but allocates a new table and returns it.</p><ul class="at-tag"><li><span class="at-tag since">Since</span>: 0.16</li></ul></div></div><div class="spec val" id="val-to_list"><a href="#val-to_list" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>to_list : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Hashtbl.t <span class="keyword">&#8209;&gt;</span> (<span class="type-var">'a</span><span class="keyword"> * </span><span class="type-var">'b</span>) list</code></div><div class="doc"><p>List of bindings (order unspecified).</p></div></div><div class="spec val" id="val-of_list"><a href="#val-of_list" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>of_list : (<span class="type-var">'a</span><span class="keyword"> * </span><span class="type-var">'b</span>) list <span class="keyword">&#8209;&gt;</span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Hashtbl.t</code></div><div class="doc"><p>Build a table from the given list of bindings <code class="code">k_i -&gt; v_i</code>,
added in order using <a href="index.html#val-add">add</a>. If a key occurs several times,
it will be added several times, and the visible binding
will be the last one.</p></div></div><div class="spec val" id="val-update"><a href="#val-update" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>update : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Hashtbl.t <span class="keyword">&#8209;&gt;</span> f:(<span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'b</span> option <span class="keyword">&#8209;&gt;</span> <span class="type-var">'b</span> option) <span class="keyword">&#8209;&gt;</span> k:<span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> unit</code></div><div class="doc"><p><code class="code">update tbl ~f ~k</code> updates key <code class="code">k</code> by calling <code class="code">f k (Some v)</code> if
<code class="code">k</code> was mapped to <code class="code">v</code>, or <code class="code">f k None</code> otherwise; if the call
returns <code class="code">None</code> then <code class="code">k</code> is removed/stays removed, if the call
returns <code class="code">Some v'</code> then the binding <code class="code">k -&gt; v'</code> is inserted
using <span class="xref-unresolved" title="unresolved reference to &quot;Hashtbl.replace&quot;"><a href="../index.html#module-Hashtbl">Hashtbl</a>.replace</span>.</p><ul class="at-tag"><li><span class="at-tag since">Since</span>: 0.14</li></ul></div></div><div class="spec val" id="val-get_or_add"><a href="#val-get_or_add" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>get_or_add : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Hashtbl.t <span class="keyword">&#8209;&gt;</span> f:(<span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'b</span>) <span class="keyword">&#8209;&gt;</span> k:<span class="type-var">'a</span> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'b</span></code></div><div class="doc"><p><code class="code">get_or_add tbl ~k ~f</code> finds and returns the binding of <code class="code">k</code>
in <code class="code">tbl</code>, if it exists. If it does not exist, then <code class="code">f k</code>
is called to obtain a new binding <code class="code">v</code>; <code class="code">k -&gt; v</code> is added
to <code class="code">tbl</code> and <code class="code">v</code> is returned.</p><ul class="at-tag"><li><span class="at-tag since">Since</span>: 1.0</li></ul></div></div><div class="spec val" id="val-pp"><a href="#val-pp" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>pp : <span class="type-var">'a</span> <a href="../../CCHashtbl/index.html#type-printer">CCHashtbl.printer</a> <span class="keyword">&#8209;&gt;</span> <span class="type-var">'b</span> <a href="../../CCHashtbl/index.html#type-printer">CCHashtbl.printer</a> <span class="keyword">&#8209;&gt;</span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Hashtbl.t <a href="../../CCHashtbl/index.html#type-printer">CCHashtbl.printer</a></code></div><div class="doc"><p>Printer for table.
Renamed from <code class="code">print</code> since 2.0.</p><ul class="at-tag"><li><span class="at-tag since">Since</span>: 0.13</li></ul></div></div></details></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> = <a href="../../CCHashtbl/index.html#module-type-S">CCHashtbl.S</a></code></div><div class="doc"></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>Make' = <a href="../../CCHashtbl/index.html#module-Make">CCHashtbl.Make</a></code></div><div class="doc"></div></div></body></html>