mirror of
https://github.com/c-cube/ocaml-containers.git
synced 2025-12-06 03:05:28 -05:00
19 lines
No EOL
35 KiB
HTML
19 lines
No EOL
35 KiB
HTML
<!DOCTYPE html>
|
||
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Make (containers.CCHashtbl.Make)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> – <a href="../../index.html">containers</a> » <a href="../index.html">CCHashtbl</a> » Make</nav><header class="odoc-preamble"><h1>Module <code><span>CCHashtbl.Make</span></code></h1></header><nav class="odoc-toc"><ul><li><a href="#parameters">Parameters</a></li><li><a href="#signature">Signature</a></li></ul></nav><div class="odoc-content"><h2 id="parameters"><a href="#parameters" class="anchor"></a>Parameters</h2><div class="odoc-spec"><div class="spec parameter anchored" id="argument-1-X"><a href="#argument-1-X" class="anchor"></a><code><span><span class="keyword">module</span> </span><span>X</span><span> : <span class="xref-unresolved">Stdlib</span>.Hashtbl.HashedType</span></code></div></div><h2 id="signature"><a href="#signature" class="anchor"></a>Signature</h2><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <span class="xref-unresolved">Stdlib</span>.Hashtbl.S
|
||
<span class="keyword">with</span> <span><span class="keyword">type</span> <span class="xref-unresolved">key</span> = <span class="xref-unresolved">X</span>.t</span>
|
||
<span class="keyword">with</span> <span><span class="keyword">type</span> <span>'a <span class="xref-unresolved">t</span></span> = <span><span class="type-var">'a</span> <span class="xref-unresolved">Stdlib</span>.Hashtbl.Make(<span class="xref-unresolved">X</span>).t</span></span></span></code></summary><div class="odoc-spec"><div class="spec type anchored" id="type-key"><a href="#type-key" class="anchor"></a><code><span><span class="keyword">type</span> key</span><span> = <span class="xref-unresolved">X</span>.t</span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> <span>'a t</span></span><span> = <span><span class="type-var">'a</span> <span class="xref-unresolved">Stdlib</span>.Hashtbl.Make(<span class="xref-unresolved">X</span>).t</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-create"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create : <span>int <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <a href="#type-t">t</a></span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-clear"><a href="#val-clear" class="anchor"></a><code><span><span class="keyword">val</span> clear : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-reset"><a href="#val-reset" class="anchor"></a><code><span><span class="keyword">val</span> reset : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-copy"><a href="#val-copy" class="anchor"></a><code><span><span class="keyword">val</span> copy : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <a href="#type-t">t</a></span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add"><a href="#val-add" class="anchor"></a><code><span><span class="keyword">val</span> add : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><a href="#type-key">key</a> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-remove"><a href="#val-remove" class="anchor"></a><code><span><span class="keyword">val</span> remove : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><a href="#type-key">key</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-find"><a href="#val-find" class="anchor"></a><code><span><span class="keyword">val</span> find : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><a href="#type-key">key</a> <span class="arrow">-></span></span> <span class="type-var">'a</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-find_opt"><a href="#val-find_opt" class="anchor"></a><code><span><span class="keyword">val</span> find_opt : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><a href="#type-key">key</a> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> option</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-find_all"><a href="#val-find_all" class="anchor"></a><code><span><span class="keyword">val</span> find_all : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><a href="#type-key">key</a> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> list</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-replace"><a href="#val-replace" class="anchor"></a><code><span><span class="keyword">val</span> replace : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><a href="#type-key">key</a> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-mem"><a href="#val-mem" class="anchor"></a><code><span><span class="keyword">val</span> mem : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><a href="#type-key">key</a> <span class="arrow">-></span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-iter"><a href="#val-iter" class="anchor"></a><code><span><span class="keyword">val</span> iter : <span><span>(<span><a href="#type-key">key</a> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <span class="arrow">-></span></span> unit)</span> <span class="arrow">-></span></span> <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-filter_map_inplace"><a href="#val-filter_map_inplace" class="anchor"></a><code><span><span class="keyword">val</span> filter_map_inplace : <span><span>(<span><a href="#type-key">key</a> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> option</span>)</span> <span class="arrow">-></span></span> <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-fold"><a href="#val-fold" class="anchor"></a><code><span><span class="keyword">val</span> fold : <span><span>(<span><a href="#type-key">key</a> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <span class="arrow">-></span></span> <span><span class="type-var">'b</span> <span class="arrow">-></span></span> <span class="type-var">'b</span>)</span> <span class="arrow">-></span></span> <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><span class="type-var">'b</span> <span class="arrow">-></span></span> <span class="type-var">'b</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-length"><a href="#val-length" class="anchor"></a><code><span><span class="keyword">val</span> length : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> int</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-stats"><a href="#val-stats" class="anchor"></a><code><span><span class="keyword">val</span> stats : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span class="xref-unresolved">Stdlib__Hashtbl</span>.statistics</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-to_seq"><a href="#val-to_seq" class="anchor"></a><code><span><span class="keyword">val</span> to_seq : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><span>(<a href="#type-key">key</a> * <span class="type-var">'a</span>)</span> <span class="xref-unresolved">Stdlib</span>.Seq.t</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-to_seq_keys"><a href="#val-to_seq_keys" class="anchor"></a><code><span><span class="keyword">val</span> to_seq_keys : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><a href="#type-key">key</a> <span class="xref-unresolved">Stdlib</span>.Seq.t</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-to_seq_values"><a href="#val-to_seq_values" class="anchor"></a><code><span><span class="keyword">val</span> to_seq_values : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <span class="xref-unresolved">Stdlib</span>.Seq.t</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-replace_seq"><a href="#val-replace_seq" class="anchor"></a><code><span><span class="keyword">val</span> replace_seq : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><span><span>(<a href="#type-key">key</a> * <span class="type-var">'a</span>)</span> <span class="xref-unresolved">Stdlib</span>.Seq.t</span> <span class="arrow">-></span></span> unit</span></code></div></div></details></div><div class="odoc-spec"><div class="spec value anchored" id="val-get"><a href="#val-get" class="anchor"></a><code><span><span class="keyword">val</span> get : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><a href="#type-key">key</a> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> option</span></span></code></div><div class="spec-doc"><p><code>get tbl k</code> finds a binding for the key <code>k</code> if present, or returns <code>None</code> if no value is found. Safe version of <code>Hashtbl</code>.find.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-get_or"><a href="#val-get_or" class="anchor"></a><code><span><span class="keyword">val</span> get_or : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><a href="#type-key">key</a> <span class="arrow">-></span></span> <span>default:<span class="type-var">'a</span> <span class="arrow">-></span></span> <span class="type-var">'a</span></span></code></div><div class="spec-doc"><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><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.16</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_list"><a href="#val-add_list" class="anchor"></a><code><span><span class="keyword">val</span> add_list : <span><span><span><span class="type-var">'a</span> list</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><a href="#type-key">key</a> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <span class="arrow">-></span></span> unit</span></code></div><div class="spec-doc"><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><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.16</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-incr"><a href="#val-incr" class="anchor"></a><code><span><span class="keyword">val</span> incr : <span>?by:int <span class="arrow">-></span></span> <span><span>int <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><a href="#type-key">key</a> <span class="arrow">-></span></span> unit</span></code></div><div class="spec-doc"><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><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">by</span> <p>if specified, the int value is incremented by <code>by</code> rather than 1.</p></li></ul><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.16</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-decr"><a href="#val-decr" class="anchor"></a><code><span><span class="keyword">val</span> decr : <span>?by:int <span class="arrow">-></span></span> <span><span>int <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><a href="#type-key">key</a> <span class="arrow">-></span></span> unit</span></code></div><div class="spec-doc"><p><code>decr ?by tbl x</code> is like <a href="#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><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.16</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-keys"><a href="#val-keys" class="anchor"></a><code><span><span class="keyword">val</span> keys : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><a href="#type-key">key</a> <a href="../index.html#type-iter">iter</a></span></span></code></div><div class="spec-doc"><p><code>keys tbl f</code> iterates on keys (similar order as <code>Hashtbl</code>.iter).</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-values"><a href="#val-values" class="anchor"></a><code><span><span class="keyword">val</span> values : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <a href="../index.html#type-iter">iter</a></span></span></code></div><div class="spec-doc"><p><code>values tbl f</code> iterates on values in the table.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-keys_list"><a href="#val-keys_list" class="anchor"></a><code><span><span class="keyword">val</span> keys_list : <span><span><span class="type-var">_</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><a href="#type-key">key</a> list</span></span></code></div><div class="spec-doc"><p><code>keys_list tbl</code> is the list of keys in <code>tbl</code>. If the key is in the Hashtable multiple times, all occurrences will be returned.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.8</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-values_list"><a href="#val-values_list" class="anchor"></a><code><span><span class="keyword">val</span> values_list : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> list</span></span></code></div><div class="spec-doc"><p><code>values_list t</code> is the list of values in <code>t</code>.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.8</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-map_list"><a href="#val-map_list" class="anchor"></a><code><span><span class="keyword">val</span> map_list : <span><span>(<span><a href="#type-key">key</a> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <span class="arrow">-></span></span> <span class="type-var">'b</span>)</span> <span class="arrow">-></span></span> <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><span class="type-var">'b</span> list</span></span></code></div><div class="spec-doc"><p>Map on a hashtable's items, collect into a list.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-to_iter"><a href="#val-to_iter" class="anchor"></a><code><span><span class="keyword">val</span> to_iter : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><span>(<a href="#type-key">key</a> * <span class="type-var">'a</span>)</span> <a href="../index.html#type-iter">iter</a></span></span></code></div><div class="spec-doc"><p>Iterate on bindings in the table.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 2.8</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_iter"><a href="#val-add_iter" class="anchor"></a><code><span><span class="keyword">val</span> add_iter : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><span><span>(<a href="#type-key">key</a> * <span class="type-var">'a</span>)</span> <a href="../index.html#type-iter">iter</a></span> <span class="arrow">-></span></span> unit</span></code></div><div class="spec-doc"><p>Add the corresponding pairs to the table, using <code>Hashtbl</code>.add.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 2.8</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_iter_with"><a href="#val-add_iter_with" class="anchor"></a><code><span><span class="keyword">val</span> add_iter_with :
|
||
<span>f:<span>(<span><a href="#type-key">key</a> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <span class="arrow">-></span></span> <span class="type-var">'a</span>)</span> <span class="arrow">-></span></span>
|
||
<span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span>
|
||
<span><span><span>(<a href="#type-key">key</a> * <span class="type-var">'a</span>)</span> <a href="../index.html#type-iter">iter</a></span> <span class="arrow">-></span></span>
|
||
unit</span></code></div><div class="spec-doc"><p>Add the corresponding pairs to the table, using <code>Hashtbl</code>.add. If a key occurs multiple times in the input, the values are combined using <code>f</code> in an unspecified order.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 3.3</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_seq"><a href="#val-add_seq" class="anchor"></a><code><span><span class="keyword">val</span> add_seq : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><span><span>(<a href="#type-key">key</a> * <span class="type-var">'a</span>)</span> <span class="xref-unresolved">Stdlib</span>.Seq.t</span> <span class="arrow">-></span></span> unit</span></code></div><div class="spec-doc"><p>Add the corresponding pairs to the table, using <code>Hashtbl</code>.add. Renamed from <code>add_std_seq</code> since 3.0.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 3.0</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_seq_with"><a href="#val-add_seq_with" class="anchor"></a><code><span><span class="keyword">val</span> add_seq_with :
|
||
<span>f:<span>(<span><a href="#type-key">key</a> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <span class="arrow">-></span></span> <span class="type-var">'a</span>)</span> <span class="arrow">-></span></span>
|
||
<span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span>
|
||
<span><span><span>(<a href="#type-key">key</a> * <span class="type-var">'a</span>)</span> <span class="xref-unresolved">Stdlib</span>.Seq.t</span> <span class="arrow">-></span></span>
|
||
unit</span></code></div><div class="spec-doc"><p>Add the corresponding pairs to the table, using <code>Hashtbl</code>.add. If a key occurs multiple times in the input, the values are combined using <code>f</code> in an unspecified order.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 3.3</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-of_iter"><a href="#val-of_iter" class="anchor"></a><code><span><span class="keyword">val</span> of_iter : <span><span><span>(<a href="#type-key">key</a> * <span class="type-var">'a</span>)</span> <a href="../index.html#type-iter">iter</a></span> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <a href="#type-t">t</a></span></span></code></div><div class="spec-doc"><p>From the given bindings, added in order.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 2.8</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-of_iter_with"><a href="#val-of_iter_with" class="anchor"></a><code><span><span class="keyword">val</span> of_iter_with : <span>f:<span>(<span><a href="#type-key">key</a> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <span class="arrow">-></span></span> <span class="type-var">'a</span>)</span> <span class="arrow">-></span></span> <span><span><span>(<a href="#type-key">key</a> * <span class="type-var">'a</span>)</span> <a href="../index.html#type-iter">iter</a></span> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <a href="#type-t">t</a></span></span></code></div><div class="spec-doc"><p>From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using <code>f</code> in an unspecified order.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 3.3</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-of_seq"><a href="#val-of_seq" class="anchor"></a><code><span><span class="keyword">val</span> of_seq : <span><span><span>(<a href="#type-key">key</a> * <span class="type-var">'a</span>)</span> <span class="xref-unresolved">Stdlib</span>.Seq.t</span> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <a href="#type-t">t</a></span></span></code></div><div class="spec-doc"><p>From the given bindings, added in order. Renamed from <code>of_std_seq</code> since 3.0.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 3.0</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-of_seq_with"><a href="#val-of_seq_with" class="anchor"></a><code><span><span class="keyword">val</span> of_seq_with : <span>f:<span>(<span><a href="#type-key">key</a> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <span class="arrow">-></span></span> <span class="type-var">'a</span>)</span> <span class="arrow">-></span></span> <span><span><span>(<a href="#type-key">key</a> * <span class="type-var">'a</span>)</span> <span class="xref-unresolved">Stdlib</span>.Seq.t</span> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <a href="#type-t">t</a></span></span></code></div><div class="spec-doc"><p>From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using <code>f</code> in an unspecified order.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 3.3</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_iter_count"><a href="#val-add_iter_count" class="anchor"></a><code><span><span class="keyword">val</span> add_iter_count : <span><span>int <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><span><a href="#type-key">key</a> <a href="../index.html#type-iter">iter</a></span> <span class="arrow">-></span></span> unit</span></code></div><div class="spec-doc"><p><code>add_iter_count tbl i</code> increments the count of each element of <code>i</code> by calling <a href="#val-incr"><code>incr</code></a>. This is useful for counting how many times each element of <code>i</code> occurs.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 2.8</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_seq_count"><a href="#val-add_seq_count" class="anchor"></a><code><span><span class="keyword">val</span> add_seq_count : <span><span>int <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><span><a href="#type-key">key</a> <span class="xref-unresolved">Stdlib</span>.Seq.t</span> <span class="arrow">-></span></span> unit</span></code></div><div class="spec-doc"><p><code>add_seq_count tbl seq</code> increments the count of each element of <code>seq</code> by calling <a href="#val-incr"><code>incr</code></a>. This is useful for counting how many times each element of <code>seq</code> occurs. Renamed from <code>of_std_seq_count</code> since 3.0.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 3.0</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-of_iter_count"><a href="#val-of_iter_count" class="anchor"></a><code><span><span class="keyword">val</span> of_iter_count : <span><span><a href="#type-key">key</a> <a href="../index.html#type-iter">iter</a></span> <span class="arrow">-></span></span> <span>int <a href="#type-t">t</a></span></span></code></div><div class="spec-doc"><p>Like <a href="#val-add_seq_count"><code>add_seq_count</code></a>, but allocates a new table and returns it.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 2.8</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-of_seq_count"><a href="#val-of_seq_count" class="anchor"></a><code><span><span class="keyword">val</span> of_seq_count : <span><span><a href="#type-key">key</a> <span class="xref-unresolved">Stdlib</span>.Seq.t</span> <span class="arrow">-></span></span> <span>int <a href="#type-t">t</a></span></span></code></div><div class="spec-doc"><p>Like <a href="#val-add_seq_count"><code>add_seq_count</code></a>, but allocates a new table and returns it. Renamed from <code>of_std_seq_count</code> since 3.0.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 3.0</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-to_list"><a href="#val-to_list" class="anchor"></a><code><span><span class="keyword">val</span> to_list : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span><span>(<a href="#type-key">key</a> * <span class="type-var">'a</span>)</span> list</span></span></code></div><div class="spec-doc"><p><code>to_list tbl</code> returns the list of (key,value) bindings (order unspecified).</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-of_list"><a href="#val-of_list" class="anchor"></a><code><span><span class="keyword">val</span> of_list : <span><span><span>(<a href="#type-key">key</a> * <span class="type-var">'a</span>)</span> list</span> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <a href="#type-t">t</a></span></span></code></div><div class="spec-doc"><p><code>of_list l</code> builds a table from the given list <code>l</code> of bindings <code>k_i -> v_i</code>, added in order using <a href="#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></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-of_list_with"><a href="#val-of_list_with" class="anchor"></a><code><span><span class="keyword">val</span> of_list_with : <span>f:<span>(<span><a href="#type-key">key</a> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <span class="arrow">-></span></span> <span class="type-var">'a</span>)</span> <span class="arrow">-></span></span> <span><span><span>(<a href="#type-key">key</a> * <span class="type-var">'a</span>)</span> list</span> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <a href="#type-t">t</a></span></span></code></div><div class="spec-doc"><p><code>of_list l</code> builds a table from the given list <code>l</code> of bindings <code>k_i -> v_i</code>. If a key occurs multiple times in the input, the values are combined using <code>f</code> in an unspecified order.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 3.3</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-update"><a href="#val-update" class="anchor"></a><code><span><span class="keyword">val</span> update : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span>f:<span>(<span><a href="#type-key">key</a> <span class="arrow">-></span></span> <span><span><span class="type-var">'a</span> option</span> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> option</span>)</span> <span class="arrow">-></span></span> <span>k:<a href="#type-key">key</a> <span class="arrow">-></span></span> unit</span></code></div><div class="spec-doc"><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 <code>Hashtbl</code>.replace.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.14</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-get_or_add"><a href="#val-get_or_add" class="anchor"></a><code><span><span class="keyword">val</span> get_or_add : <span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <span class="arrow">-></span></span> <span>f:<span>(<span><a href="#type-key">key</a> <span class="arrow">-></span></span> <span class="type-var">'a</span>)</span> <span class="arrow">-></span></span> <span>k:<a href="#type-key">key</a> <span class="arrow">-></span></span> <span class="type-var">'a</span></span></code></div><div class="spec-doc"><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><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 1.0</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-pp"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp :
|
||
<span>?pp_start:<span>unit <a href="../index.html#type-printer">printer</a></span> <span class="arrow">-></span></span>
|
||
<span>?pp_stop:<span>unit <a href="../index.html#type-printer">printer</a></span> <span class="arrow">-></span></span>
|
||
<span>?pp_sep:<span>unit <a href="../index.html#type-printer">printer</a></span> <span class="arrow">-></span></span>
|
||
<span>?pp_arrow:<span>unit <a href="../index.html#type-printer">printer</a></span> <span class="arrow">-></span></span>
|
||
<span><span><a href="#type-key">key</a> <a href="../index.html#type-printer">printer</a></span> <span class="arrow">-></span></span>
|
||
<span><span><span class="type-var">'a</span> <a href="../index.html#type-printer">printer</a></span> <span class="arrow">-></span></span>
|
||
<span><span><span class="type-var">'a</span> <a href="#type-t">t</a></span> <a href="../index.html#type-printer">printer</a></span></span></code></div><div class="spec-doc"><p><code>pp ~pp_start ~pp_stop ~pp_sep ~pp arrow pp_k pp_v</code> returns a table printer given a <code>pp_k</code> printer for individual key and a <code>pp_v</code> printer for individual value. <code>pp_start</code> and <code>pp_stop</code> control the opening and closing delimiters, by default print nothing. <code>pp_sep</code> control the separator between binding. <code>pp_arrow</code> control the arrow between the key and value. Renamed from <code>print</code> since 2.0.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.13</li></ul></div></div></div></body></html> |