mirror of
https://github.com/c-cube/ocaml-containers.git
synced 2025-12-06 11:15:31 -05:00
2 lines
No EOL
16 KiB
HTML
2 lines
No EOL
16 KiB
HTML
<!DOCTYPE html>
|
||
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Make (containers-data.CCMultiSet.Make)</title><link rel="stylesheet" href="../../../_odoc-theme/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-data</a> » <a href="../index.html">CCMultiSet</a> » Make</nav><header class="odoc-preamble"><h1>Module <code><span>CCMultiSet.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-O"><a href="#argument-1-O" class="anchor"></a><code><span><span class="keyword">module</span> </span><span><a href="argument-1-O/index.html">O</a></span><span> : <a href="../../../ocaml/Stdlib/Set/module-type-OrderedType/index.html">Stdlib.Set.OrderedType</a></span></code></div></div><h2 id="signature"><a href="#signature" class="anchor"></a>Signature</h2><div class="odoc-spec"><div class="spec type anchored" id="type-elt"><a href="#type-elt" class="anchor"></a><code><span><span class="keyword">type</span> elt</span><span> = <a href="argument-1-O/index.html#type-t">O.t</a></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> t</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-empty"><a href="#val-empty" class="anchor"></a><code><span><span class="keyword">val</span> empty : <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-is_empty"><a href="#val-is_empty" class="anchor"></a><code><span><span class="keyword">val</span> is_empty : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> bool</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><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="#type-elt">elt</a> <span class="arrow">-></span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-count"><a href="#val-count" class="anchor"></a><code><span><span class="keyword">val</span> count : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="#type-elt">elt</a> <span class="arrow">-></span></span> int</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-singleton"><a href="#val-singleton" class="anchor"></a><code><span><span class="keyword">val</span> singleton : <span><a href="#type-elt">elt</a> <span class="arrow">-></span></span> <a href="#type-t">t</a></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><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="#type-elt">elt</a> <span class="arrow">-></span></span> <a href="#type-t">t</a></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><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="#type-elt">elt</a> <span class="arrow">-></span></span> <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_mult"><a href="#val-add_mult" class="anchor"></a><code><span><span class="keyword">val</span> add_mult : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="#type-elt">elt</a> <span class="arrow">-></span></span> <span>int <span class="arrow">-></span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p><code>add_mult set x n</code> adds <code>n</code> occurrences of <code>x</code> to <code>set</code>.</p><ul class="at-tags"><li class="raises"><span class="at-tag">raises</span> <span class="value">Invalid_argument</span> <p>if <code>n < 0</code>.</p></li></ul><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.6</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-remove_mult"><a href="#val-remove_mult" class="anchor"></a><code><span><span class="keyword">val</span> remove_mult : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="#type-elt">elt</a> <span class="arrow">-></span></span> <span>int <span class="arrow">-></span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p><code>remove_mult set x n</code> removes at most <code>n</code> occurrences of <code>x</code> from <code>set</code>.</p><ul class="at-tags"><li class="raises"><span class="at-tag">raises</span> <span class="value">Invalid_argument</span> <p>if <code>n < 0</code>.</p></li></ul><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.6</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-remove_all"><a href="#val-remove_all" class="anchor"></a><code><span><span class="keyword">val</span> remove_all : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="#type-elt">elt</a> <span class="arrow">-></span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p><code>remove_all set x</code> removes all occurrences of <code>x</code> from <code>set</code>.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.22</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><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="#type-elt">elt</a> <span class="arrow">-></span></span> <span><span>(<span>int <span class="arrow">-></span></span> int)</span> <span class="arrow">-></span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p><code>update set x f</code> calls <code>f n</code> where <code>n</code> is the current multiplicity of <code>x</code> in <code>set</code> (<code>0</code> to indicate its absence); the result of <code>f n</code> is the new multiplicity of <code>x</code>.</p><ul class="at-tags"><li class="raises"><span class="at-tag">raises</span> <span class="value">Invalid_argument</span> <p>if <code>f n < 0</code>.</p></li></ul><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.6</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-min"><a href="#val-min" class="anchor"></a><code><span><span class="keyword">val</span> min : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <a href="#type-elt">elt</a></span></code></div><div class="spec-doc"><p>Minimal element w.r.t the total ordering on elements.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-max"><a href="#val-max" class="anchor"></a><code><span><span class="keyword">val</span> max : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <a href="#type-elt">elt</a></span></code></div><div class="spec-doc"><p>Maximal element w.r.t the total ordering on elements.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-union"><a href="#val-union" class="anchor"></a><code><span><span class="keyword">val</span> union : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p><code>union a b</code> contains as many occurrences of an element <code>x</code> as <code>count a x + count b x</code>.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-meet"><a href="#val-meet" class="anchor"></a><code><span><span class="keyword">val</span> meet : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p><code>meet a b</code> is a multiset such that <code>count (meet a b) x = max (count a x) (count b x)</code>.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-intersection"><a href="#val-intersection" class="anchor"></a><code><span><span class="keyword">val</span> intersection : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p><code>intersection a b</code> is a multiset such that <code>count (intersection a b) x = min (count a x) (count b x)</code>.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-diff"><a href="#val-diff" class="anchor"></a><code><span><span class="keyword">val</span> diff : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>MultiSet difference. <code>count (diff a b) x = max (count a x - count b x) 0</code>.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-contains"><a href="#val-contains" class="anchor"></a><code><span><span class="keyword">val</span> contains : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="#type-t">t</a> <span class="arrow">-></span></span> bool</span></code></div><div class="spec-doc"><p><code>contains a x = (count m x > 0)</code>.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-compare"><a href="#val-compare" class="anchor"></a><code><span><span class="keyword">val</span> compare : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="#type-t">t</a> <span class="arrow">-></span></span> int</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-equal"><a href="#val-equal" class="anchor"></a><code><span><span class="keyword">val</span> equal : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="#type-t">t</a> <span class="arrow">-></span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-cardinal"><a href="#val-cardinal" class="anchor"></a><code><span><span class="keyword">val</span> cardinal : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> int</span></code></div><div class="spec-doc"><p>Number of distinct elements.</p></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><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><span>(<span>int <span class="arrow">-></span></span> <span><a href="#type-elt">elt</a> <span class="arrow">-></span></span> unit)</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><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><span class="type-var">'b</span> <span class="arrow">-></span></span> <span><span>(<span><span class="type-var">'b</span> <span class="arrow">-></span></span> <span>int <span class="arrow">-></span></span> <span><a href="#type-elt">elt</a> <span class="arrow">-></span></span> <span class="type-var">'b</span>)</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-of_list"><a href="#val-of_list" class="anchor"></a><code><span><span class="keyword">val</span> of_list : <span><span><a href="#type-elt">elt</a> list</span> <span class="arrow">-></span></span> <a href="#type-t">t</a></span></code></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><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="#type-elt">elt</a> list</span></span></code></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><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="#type-elt">elt</a> <a href="../index.html#type-iter">iter</a></span></span></code></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><a href="#type-elt">elt</a> <a href="../index.html#type-iter">iter</a></span> <span class="arrow">-></span></span> <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-of_list_mult"><a href="#val-of_list_mult" class="anchor"></a><code><span><span class="keyword">val</span> of_list_mult : <span><span><span>(<a href="#type-elt">elt</a> * int)</span> list</span> <span class="arrow">-></span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.19</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-to_list_mult"><a href="#val-to_list_mult" class="anchor"></a><code><span><span class="keyword">val</span> to_list_mult : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><span>(<a href="#type-elt">elt</a> * int)</span> list</span></span></code></div><div class="spec-doc"><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.19</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-to_iter_mult"><a href="#val-to_iter_mult" class="anchor"></a><code><span><span class="keyword">val</span> to_iter_mult : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><span>(<a href="#type-elt">elt</a> * int)</span> <a href="../index.html#type-iter">iter</a></span></span></code></div><div class="spec-doc"><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.19</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-of_iter_mult"><a href="#val-of_iter_mult" class="anchor"></a><code><span><span class="keyword">val</span> of_iter_mult : <span><span><span>(<a href="#type-elt">elt</a> * int)</span> <a href="../index.html#type-iter">iter</a></span> <span class="arrow">-></span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.19</li></ul></div></div></div></body></html> |