mirror of
https://github.com/c-cube/ocaml-containers.git
synced 2025-12-06 03:05:28 -05:00
2 lines
No EOL
30 KiB
HTML
2 lines
No EOL
30 KiB
HTML
<!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"/><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">containers</a> » <a href="../index.html">Containers</a> » Hashtbl</nav><h1>Module <code>Containers.Hashtbl</code></h1><dl><dt>since</dt><dd>0.14</dd></dl></header><div><div class="spec include"><div class="doc"><details open="open"><summary><span class="def"><code><span class="keyword">include</span> <span class="keyword">module</span> <span class="keyword">type</span> <span class="keyword">of</span> Stdlib.Hashtbl <span class="keyword">with</span> <span class="keyword">type</span> <a href="../index.html#module-Hashtbl">Hashtbl</a>.statistics = Stdlib.Hashtbl.statistics <span class="keyword">and</span> <span class="keyword">module</span> <a href="../index.html#module-Hashtbl">Hashtbl</a>.Make = Stdlib.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="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t</code></span></summary><dl><dt class="spec type" id="type-t"><a href="#type-t" class="anchor"></a><code><span class="keyword">type</span> ('a, 'b) t</code><code> = (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t</code></dt></dl><dl><dt class="spec value" id="val-create"><a href="#val-create" class="anchor"></a><code><span class="keyword">val</span> create : ?⁠random:bool <span>-></span> int <span>-></span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a></code></dt><dt class="spec value" id="val-clear"><a href="#val-clear" class="anchor"></a><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>-></span> unit</code></dt><dt class="spec value" id="val-reset"><a href="#val-reset" class="anchor"></a><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>-></span> unit</code></dt><dt class="spec value" id="val-copy"><a href="#val-copy" class="anchor"></a><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>-></span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a></code></dt><dt class="spec value" id="val-add"><a href="#val-add" class="anchor"></a><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>-></span> <span class="type-var">'a</span> <span>-></span> <span class="type-var">'b</span> <span>-></span> unit</code></dt><dt class="spec value" id="val-find"><a href="#val-find" class="anchor"></a><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>-></span> <span class="type-var">'a</span> <span>-></span> <span class="type-var">'b</span></code></dt><dt class="spec value" id="val-find_opt"><a href="#val-find_opt" class="anchor"></a><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>-></span> <span class="type-var">'a</span> <span>-></span> <span class="type-var">'b</span> option</code></dt><dt class="spec value" id="val-find_all"><a href="#val-find_all" class="anchor"></a><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>-></span> <span class="type-var">'a</span> <span>-></span> <span class="type-var">'b</span> list</code></dt><dt class="spec value" id="val-mem"><a href="#val-mem" class="anchor"></a><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>-></span> <span class="type-var">'a</span> <span>-></span> bool</code></dt><dt class="spec value" id="val-remove"><a href="#val-remove" class="anchor"></a><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>-></span> <span class="type-var">'a</span> <span>-></span> unit</code></dt><dt class="spec value" id="val-replace"><a href="#val-replace" class="anchor"></a><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>-></span> <span class="type-var">'a</span> <span>-></span> <span class="type-var">'b</span> <span>-></span> unit</code></dt><dt class="spec value" id="val-iter"><a href="#val-iter" class="anchor"></a><code><span class="keyword">val</span> iter : (<span class="type-var">'a</span> <span>-></span> <span class="type-var">'b</span> <span>-></span> unit) <span>-></span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span>-></span> unit</code></dt><dt class="spec value" id="val-filter_map_inplace"><a href="#val-filter_map_inplace" class="anchor"></a><code><span class="keyword">val</span> filter_map_inplace : (<span class="type-var">'a</span> <span>-></span> <span class="type-var">'b</span> <span>-></span> <span class="type-var">'b</span> option) <span>-></span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span>-></span> unit</code></dt><dt class="spec value" id="val-fold"><a href="#val-fold" class="anchor"></a><code><span class="keyword">val</span> fold : (<span class="type-var">'a</span> <span>-></span> <span class="type-var">'b</span> <span>-></span> <span class="type-var">'c</span> <span>-></span> <span class="type-var">'c</span>) <span>-></span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span>-></span> <span class="type-var">'c</span> <span>-></span> <span class="type-var">'c</span></code></dt><dt class="spec value" id="val-length"><a href="#val-length" class="anchor"></a><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>-></span> int</code></dt><dt class="spec value" id="val-randomize"><a href="#val-randomize" class="anchor"></a><code><span class="keyword">val</span> randomize : unit <span>-></span> unit</code></dt><dt class="spec value" id="val-is_randomized"><a href="#val-is_randomized" class="anchor"></a><code><span class="keyword">val</span> is_randomized : unit <span>-></span> bool</code></dt></dl><dl><dt class="spec type" id="type-statistics"><a href="#type-statistics" class="anchor"></a><code><span class="keyword">type</span> statistics</code><code> = Stdlib.Hashtbl.statistics</code><code> = </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></dt></dl><dl><dt class="spec value" id="val-stats"><a href="#val-stats" class="anchor"></a><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>-></span> <a href="index.html#type-statistics">statistics</a></code></dt><dt class="spec value" id="val-to_seq"><a href="#val-to_seq" class="anchor"></a><code><span class="keyword">val</span> to_seq : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span>-></span> (<span class="type-var">'a</span> * <span class="type-var">'b</span>) Stdlib.Seq.t</code></dt><dt class="spec value" id="val-to_seq_keys"><a href="#val-to_seq_keys" class="anchor"></a><code><span class="keyword">val</span> to_seq_keys : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span>-></span> <span class="type-var">'a</span> Stdlib.Seq.t</code></dt><dt class="spec value" id="val-to_seq_values"><a href="#val-to_seq_values" class="anchor"></a><code><span class="keyword">val</span> to_seq_values : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span>-></span> <span class="type-var">'b</span> Stdlib.Seq.t</code></dt><dt class="spec value" id="val-add_seq"><a href="#val-add_seq" class="anchor"></a><code><span class="keyword">val</span> add_seq : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span>-></span> (<span class="type-var">'a</span> * <span class="type-var">'b</span>) Stdlib.Seq.t <span>-></span> unit</code></dt><dt class="spec value" id="val-replace_seq"><a href="#val-replace_seq" class="anchor"></a><code><span class="keyword">val</span> replace_seq : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a> <span>-></span> (<span class="type-var">'a</span> * <span class="type-var">'b</span>) Stdlib.Seq.t <span>-></span> unit</code></dt><dt class="spec value" id="val-of_seq"><a href="#val-of_seq" class="anchor"></a><code><span class="keyword">val</span> of_seq : (<span class="type-var">'a</span> * <span class="type-var">'b</span>) Stdlib.Seq.t <span>-></span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) <a href="index.html#type-t">t</a></code></dt></dl><div class="spec module-type" id="module-type-HashedType"><a href="#module-type-HashedType" class="anchor"></a><code><span class="keyword">module</span> <span class="keyword">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="spec module-type" id="module-type-S"><a href="#module-type-S" class="anchor"></a><code><span class="keyword">module</span> <span class="keyword">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="spec module" id="module-Make"><a href="#module-Make" class="anchor"></a><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> : Stdlib__hashtbl.HashedType) <span>-></span> <span class="keyword">sig</span> ... <span class="keyword">end</span></code></div><div class="spec module-type" id="module-type-SeededHashedType"><a href="#module-type-SeededHashedType" class="anchor"></a><code><span class="keyword">module</span> <span class="keyword">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="spec module-type" id="module-type-SeededS"><a href="#module-type-SeededS" class="anchor"></a><code><span class="keyword">module</span> <span class="keyword">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="spec module" id="module-MakeSeeded"><a href="#module-MakeSeeded" class="anchor"></a><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>) <span>-></span> <span class="keyword">sig</span> ... <span class="keyword">end</span></code></div><dl><dt class="spec value" id="val-hash"><a href="#val-hash" class="anchor"></a><code><span class="keyword">val</span> hash : <span class="type-var">'a</span> <span>-></span> int</code></dt><dt class="spec value" id="val-seeded_hash"><a href="#val-seeded_hash" class="anchor"></a><code><span class="keyword">val</span> seeded_hash : int <span>-></span> <span class="type-var">'a</span> <span>-></span> int</code></dt><dt class="spec value" id="val-hash_param"><a href="#val-hash_param" class="anchor"></a><code><span class="keyword">val</span> hash_param : int <span>-></span> int <span>-></span> <span class="type-var">'a</span> <span>-></span> int</code></dt><dt class="spec value" id="val-seeded_hash_param"><a href="#val-seeded_hash_param" class="anchor"></a><code><span class="keyword">val</span> seeded_hash_param : int <span>-></span> int <span>-></span> int <span>-></span> <span class="type-var">'a</span> <span>-></span> int</code></dt></dl></details></div></div></div><div><div class="spec include"><div class="doc"><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><dl><dt class="spec value" id="val-get"><a href="#val-get" class="anchor"></a><code><span class="keyword">val</span> get : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t <span>-></span> <span class="type-var">'a</span> <span>-></span> <span class="type-var">'b</span> option</code></dt><dd><p>Safe version of <span class="xref-unresolved" title="unresolved reference to "Hashtbl.find""><a href="../index.html#module-Hashtbl"><code>Hashtbl</code></a>.find</span>.</p></dd></dl><dl><dt class="spec value" id="val-get_or"><a href="#val-get_or" class="anchor"></a><code><span class="keyword">val</span> get_or : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t <span>-></span> <span class="type-var">'a</span> <span>-></span> default:<span class="type-var">'b</span> <span>-></span> <span class="type-var">'b</span></code></dt><dd><p><code>get_or tbl k ~default</code> returns the value associated to <code>k</code> if present, and returns <code>default</code> otherwise (if <code>k</code> doesn't belong in <code>tbl</code>).</p><dl><dt>since</dt><dd>0.16</dd></dl></dd></dl><dl><dt class="spec value" id="val-keys"><a href="#val-keys" class="anchor"></a><code><span class="keyword">val</span> keys : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t <span>-></span> <span class="type-var">'a</span> <a href="../../CCHashtbl/index.html#type-iter">CCHashtbl.iter</a></code></dt><dd><p>Iterate on keys (similar order as <span class="xref-unresolved" title="unresolved reference to "Hashtbl.iter""><a href="../index.html#module-Hashtbl"><code>Hashtbl</code></a>.iter</span>).</p></dd></dl><dl><dt class="spec value" id="val-values"><a href="#val-values" class="anchor"></a><code><span class="keyword">val</span> values : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t <span>-></span> <span class="type-var">'b</span> <a href="../../CCHashtbl/index.html#type-iter">CCHashtbl.iter</a></code></dt><dd><p>Iterate on values in the table.</p></dd></dl><dl><dt class="spec value" id="val-keys_list"><a href="#val-keys_list" class="anchor"></a><code><span class="keyword">val</span> keys_list : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t <span>-></span> <span class="type-var">'a</span> list</code></dt><dd><p><code>keys_list t</code> is the list of keys in <code>t</code>. If the key is in the Hashtable multiple times, all occurrences will be returned.</p><dl><dt>since</dt><dd>0.8</dd></dl></dd></dl><dl><dt class="spec value" id="val-values_list"><a href="#val-values_list" class="anchor"></a><code><span class="keyword">val</span> values_list : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t <span>-></span> <span class="type-var">'b</span> list</code></dt><dd><p><code>values_list t</code> is the list of values in <code>t</code>.</p><dl><dt>since</dt><dd>0.8</dd></dl></dd></dl><dl><dt class="spec value" id="val-map_list"><a href="#val-map_list" class="anchor"></a><code><span class="keyword">val</span> map_list : (<span class="type-var">'a</span> <span>-></span> <span class="type-var">'b</span> <span>-></span> <span class="type-var">'c</span>) <span>-></span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t <span>-></span> <span class="type-var">'c</span> list</code></dt><dd><p>Map on a hashtable's items, collect into a list.</p></dd></dl><dl><dt class="spec value" id="val-incr"><a href="#val-incr" class="anchor"></a><code><span class="keyword">val</span> incr : ?⁠by:int <span>-></span> (<span class="type-var">'a</span>, int) Stdlib.Hashtbl.t <span>-></span> <span class="type-var">'a</span> <span>-></span> unit</code></dt><dd><p><code>incr ?by tbl x</code> increments or initializes the counter associated with <code>x</code>. If <code>get tbl x = None</code>, then after update, <code>get tbl x = Some 1</code>; otherwise, if <code>get tbl x = Some n</code>, now <code>get tbl x = Some (n+1)</code>.</p><dl><dt>parameter by</dt><dd><p>if specified, the int value is incremented by <code>by</code> rather than 1.</p></dd></dl><dl><dt>since</dt><dd>0.16</dd></dl></dd></dl><dl><dt class="spec value" id="val-decr"><a href="#val-decr" class="anchor"></a><code><span class="keyword">val</span> decr : ?⁠by:int <span>-></span> (<span class="type-var">'a</span>, int) Stdlib.Hashtbl.t <span>-></span> <span class="type-var">'a</span> <span>-></span> unit</code></dt><dd><p>Like <a href="index.html#val-incr"><code>incr</code></a> but subtract 1 (or the value of <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><dl><dt>since</dt><dd>0.16</dd></dl></dd></dl><dl><dt class="spec value" id="val-to_iter"><a href="#val-to_iter" class="anchor"></a><code><span class="keyword">val</span> to_iter : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t <span>-></span> (<span class="type-var">'a</span> * <span class="type-var">'b</span>) <a href="../../CCHashtbl/index.html#type-iter">CCHashtbl.iter</a></code></dt><dd><p>Iterate on bindings in the table.</p><dl><dt>since</dt><dd>2.8</dd></dl></dd></dl><dl><dt class="spec value" id="val-to_seq"><a href="#val-to_seq" class="anchor"></a><code><span class="keyword">val</span> to_seq : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t <span>-></span> (<span class="type-var">'a</span> * <span class="type-var">'b</span>) <a href="../../CCHashtbl/index.html#type-sequence">CCHashtbl.sequence</a></code></dt><dt class="spec value" id="val-add_list"><a href="#val-add_list" class="anchor"></a><code><span class="keyword">val</span> add_list : (<span class="type-var">'a</span>, <span class="type-var">'b</span> list) Stdlib.Hashtbl.t <span>-></span> <span class="type-var">'a</span> <span>-></span> <span class="type-var">'b</span> <span>-></span> unit</code></dt><dd><p><code>add_list tbl x y</code> adds <code>y</code> to the list <code>x</code> is bound to. If <code>x</code> is not bound, it becomes bound to <code>y</code>.</p><dl><dt>since</dt><dd>0.16</dd></dl></dd></dl><dl><dt class="spec value" id="val-add_iter"><a href="#val-add_iter" class="anchor"></a><code><span class="keyword">val</span> add_iter : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t <span>-></span> (<span class="type-var">'a</span> * <span class="type-var">'b</span>) <a href="../../CCHashtbl/index.html#type-iter">CCHashtbl.iter</a> <span>-></span> unit</code></dt><dd><p>Add the corresponding pairs to the table, using <span class="xref-unresolved" title="unresolved reference to "Hashtbl.add""><a href="../index.html#module-Hashtbl"><code>Hashtbl</code></a>.add</span>.</p><dl><dt>since</dt><dd>2.8</dd></dl></dd></dl><dl><dt class="spec value" id="val-add_std_seq"><a href="#val-add_std_seq" class="anchor"></a><code><span class="keyword">val</span> add_std_seq : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t <span>-></span> (<span class="type-var">'a</span> * <span class="type-var">'b</span>) Stdlib.Seq.t <span>-></span> unit</code></dt><dd><p>Add the corresponding pairs to the table, using <span class="xref-unresolved" title="unresolved reference to "Hashtbl.add""><a href="../index.html#module-Hashtbl"><code>Hashtbl</code></a>.add</span>.</p><dl><dt>since</dt><dd>2.8</dd></dl></dd></dl><dl><dt class="spec value" id="val-add_seq"><a href="#val-add_seq" class="anchor"></a><code><span class="keyword">val</span> add_seq : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t <span>-></span> (<span class="type-var">'a</span> * <span class="type-var">'b</span>) <a href="../../CCHashtbl/index.html#type-sequence">CCHashtbl.sequence</a> <span>-></span> unit</code></dt><dt class="spec value" id="val-of_iter"><a href="#val-of_iter" class="anchor"></a><code><span class="keyword">val</span> of_iter : (<span class="type-var">'a</span> * <span class="type-var">'b</span>) <a href="../../CCHashtbl/index.html#type-iter">CCHashtbl.iter</a> <span>-></span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t</code></dt><dd><p>From the given bindings, added in order.</p><dl><dt>since</dt><dd>2.8</dd></dl></dd></dl><dl><dt class="spec value" id="val-of_std_seq"><a href="#val-of_std_seq" class="anchor"></a><code><span class="keyword">val</span> of_std_seq : (<span class="type-var">'a</span> * <span class="type-var">'b</span>) Stdlib.Seq.t <span>-></span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t</code></dt><dd><p>From the given bindings, added in order.</p><dl><dt>since</dt><dd>2.8</dd></dl></dd></dl><dl><dt class="spec value" id="val-of_seq"><a href="#val-of_seq" class="anchor"></a><code><span class="keyword">val</span> of_seq : (<span class="type-var">'a</span> * <span class="type-var">'b</span>) <a href="../../CCHashtbl/index.html#type-sequence">CCHashtbl.sequence</a> <span>-></span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t</code></dt><dt class="spec value" id="val-add_iter_count"><a href="#val-add_iter_count" class="anchor"></a><code><span class="keyword">val</span> add_iter_count : (<span class="type-var">'a</span>, int) Stdlib.Hashtbl.t <span>-></span> <span class="type-var">'a</span> <a href="../../CCHashtbl/index.html#type-iter">CCHashtbl.iter</a> <span>-></span> unit</code></dt><dd><p><code>add_iter_count tbl i</code> increments the count of each element of <code>i</code> by calling <a href="index.html#val-incr"><code>incr</code></a>. This is useful for counting how many times each element of <code>i</code> occurs.</p><dl><dt>since</dt><dd>2.8</dd></dl></dd></dl><dl><dt class="spec value" id="val-add_std_seq_count"><a href="#val-add_std_seq_count" class="anchor"></a><code><span class="keyword">val</span> add_std_seq_count : (<span class="type-var">'a</span>, int) Stdlib.Hashtbl.t <span>-></span> <span class="type-var">'a</span> Stdlib.Seq.t <span>-></span> unit</code></dt><dd><p><code>add_seq_count tbl seq</code> increments the count of each element of <code>seq</code> by calling <a href="index.html#val-incr"><code>incr</code></a>. This is useful for counting how many times each element of <code>seq</code> occurs.</p><dl><dt>since</dt><dd>2.8</dd></dl></dd></dl><dl><dt class="spec value" id="val-add_seq_count"><a href="#val-add_seq_count" class="anchor"></a><code><span class="keyword">val</span> add_seq_count : (<span class="type-var">'a</span>, int) Stdlib.Hashtbl.t <span>-></span> <span class="type-var">'a</span> <a href="../../CCHashtbl/index.html#type-sequence">CCHashtbl.sequence</a> <span>-></span> unit</code></dt><dt class="spec value" id="val-of_iter_count"><a href="#val-of_iter_count" class="anchor"></a><code><span class="keyword">val</span> of_iter_count : <span class="type-var">'a</span> <a href="../../CCHashtbl/index.html#type-iter">CCHashtbl.iter</a> <span>-></span> (<span class="type-var">'a</span>, int) Stdlib.Hashtbl.t</code></dt><dd><p>Like <a href="index.html#val-add_seq_count"><code>add_seq_count</code></a>, but allocates a new table and returns it.</p><dl><dt>since</dt><dd>2.8</dd></dl></dd></dl><dl><dt class="spec value" id="val-of_std_seq_count"><a href="#val-of_std_seq_count" class="anchor"></a><code><span class="keyword">val</span> of_std_seq_count : <span class="type-var">'a</span> Stdlib.Seq.t <span>-></span> (<span class="type-var">'a</span>, int) Stdlib.Hashtbl.t</code></dt><dd><p>Like <a href="index.html#val-add_seq_count"><code>add_seq_count</code></a>, but allocates a new table and returns it.</p><dl><dt>since</dt><dd>2.8</dd></dl></dd></dl><dl><dt class="spec value" id="val-of_seq_count"><a href="#val-of_seq_count" class="anchor"></a><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>-></span> (<span class="type-var">'a</span>, int) Stdlib.Hashtbl.t</code></dt><dt class="spec value" id="val-to_list"><a href="#val-to_list" class="anchor"></a><code><span class="keyword">val</span> to_list : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t <span>-></span> (<span class="type-var">'a</span> * <span class="type-var">'b</span>) list</code></dt><dd><p>List of bindings (order unspecified).</p></dd></dl><dl><dt class="spec value" id="val-of_list"><a href="#val-of_list" class="anchor"></a><code><span class="keyword">val</span> of_list : (<span class="type-var">'a</span> * <span class="type-var">'b</span>) list <span>-></span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t</code></dt><dd><p>Build a table from the given list of bindings <code>k_i -> v_i</code>, added in order using <a href="index.html#val-add"><code>add</code></a>. If a key occurs several times, it will be added several times, and the visible binding will be the last one.</p></dd></dl><dl><dt class="spec value" id="val-update"><a href="#val-update" class="anchor"></a><code><span class="keyword">val</span> update : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t <span>-></span> f:(<span class="type-var">'a</span> <span>-></span> <span class="type-var">'b</span> option <span>-></span> <span class="type-var">'b</span> option) <span>-></span> k:<span class="type-var">'a</span> <span>-></span> unit</code></dt><dd><p><code>update tbl ~f ~k</code> updates key <code>k</code> by calling <code>f k (Some v)</code> if <code>k</code> was mapped to <code>v</code>, or <code>f k None</code> otherwise; if the call returns <code>None</code> then <code>k</code> is removed/stays removed, if the call returns <code>Some v'</code> then the binding <code>k -> v'</code> is inserted using <span class="xref-unresolved" title="unresolved reference to "Hashtbl.replace""><a href="../index.html#module-Hashtbl"><code>Hashtbl</code></a>.replace</span>.</p><dl><dt>since</dt><dd>0.14</dd></dl></dd></dl><dl><dt class="spec value" id="val-get_or_add"><a href="#val-get_or_add" class="anchor"></a><code><span class="keyword">val</span> get_or_add : (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t <span>-></span> f:(<span class="type-var">'a</span> <span>-></span> <span class="type-var">'b</span>) <span>-></span> k:<span class="type-var">'a</span> <span>-></span> <span class="type-var">'b</span></code></dt><dd><p><code>get_or_add tbl ~k ~f</code> finds and returns the binding of <code>k</code> in <code>tbl</code>, if it exists. If it does not exist, then <code>f k</code> is called to obtain a new binding <code>v</code>; <code>k -> v</code> is added to <code>tbl</code> and <code>v</code> is returned.</p><dl><dt>since</dt><dd>1.0</dd></dl></dd></dl><dl><dt class="spec value" id="val-pp"><a href="#val-pp" class="anchor"></a><code><span class="keyword">val</span> pp : <span class="type-var">'a</span> <a href="../../CCHashtbl/index.html#type-printer">CCHashtbl.printer</a> <span>-></span> <span class="type-var">'b</span> <a href="../../CCHashtbl/index.html#type-printer">CCHashtbl.printer</a> <span>-></span> (<span class="type-var">'a</span>, <span class="type-var">'b</span>) Stdlib.Hashtbl.t <a href="../../CCHashtbl/index.html#type-printer">CCHashtbl.printer</a></code></dt><dd><p>Printer for table. Renamed from <code>print</code> since 2.0.</p><dl><dt>since</dt><dd>0.13</dd></dl></dd></dl></details></div></div></div><div class="spec module-type" id="module-type-S'"><a href="#module-type-S'" class="anchor"></a><code><span class="keyword">module</span> <span class="keyword">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="spec module" id="module-Make'"><a href="#module-Make'" class="anchor"></a><code><span class="keyword">module</span> Make' = <a href="../../CCHashtbl/index.html#module-Make">CCHashtbl.Make</a></code></div></div></body></html> |