ocaml-containers/2.7/containers/CCMultiSet/Make/index.html
2019-11-11 22:39:35 -06:00

2 lines
No EOL
12 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. 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>Make (containers.CCMultiSet.Make)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc %%VERSION%%"/><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> &#x00BB; <a href="../index.html">CCMultiSet</a> &#x00BB; Make</nav><h1>Module <code>CCMultiSet.Make</code></h1></header><h3 class="heading">Parameters</h3><ul><li><code>O : Set.OrderedType</code></li></ul><h3 class="heading">Signature</h3><dl><dt class="spec type" id="type-elt"><a href="#type-elt" class="anchor"></a><code><span class="keyword">type</span> elt</code><code> = <a href="index.html#argument-1-O">O</a>.t</code></dt><dt class="spec type" id="type-t"><a href="#type-t" class="anchor"></a><code><span class="keyword">type</span> t</code></dt></dl><dl><dt class="spec value" id="val-empty"><a href="#val-empty" class="anchor"></a><code><span class="keyword">val</span> empty : <a href="index.html#type-t">t</a></code></dt><dt class="spec value" id="val-is_empty"><a href="#val-is_empty" class="anchor"></a><code><span class="keyword">val</span> is_empty : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> bool</code></dt><dt class="spec value" id="val-mem"><a href="#val-mem" class="anchor"></a><code><span class="keyword">val</span> mem : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-elt">elt</a> <span>&#45;&gt;</span> bool</code></dt><dt class="spec value" id="val-count"><a href="#val-count" class="anchor"></a><code><span class="keyword">val</span> count : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-elt">elt</a> <span>&#45;&gt;</span> int</code></dt><dt class="spec value" id="val-singleton"><a href="#val-singleton" class="anchor"></a><code><span class="keyword">val</span> singleton : <a href="index.html#type-elt">elt</a> <span>&#45;&gt;</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 : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-elt">elt</a> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></code></dt><dt class="spec value" id="val-remove"><a href="#val-remove" class="anchor"></a><code><span class="keyword">val</span> remove : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-elt">elt</a> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></code></dt><dt class="spec value" id="val-add_mult"><a href="#val-add_mult" class="anchor"></a><code><span class="keyword">val</span> add_mult : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-elt">elt</a> <span>&#45;&gt;</span> int <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></code></dt><dd><p><code>add_mult set x n</code> adds <code>n</code> occurrences of <code>x</code> to <code>set</code>.</p><dl><dt>raises Invalid_argument</dt><dd><p>if <code>n &lt; 0</code>.</p></dd></dl><dl><dt>since</dt><dd>0.6</dd></dl></dd></dl><dl><dt class="spec value" id="val-remove_mult"><a href="#val-remove_mult" class="anchor"></a><code><span class="keyword">val</span> remove_mult : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-elt">elt</a> <span>&#45;&gt;</span> int <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></code></dt><dd><p><code>remove_mult set x n</code> removes at most <code>n</code> occurrences of <code>x</code> from <code>set</code>.</p><dl><dt>raises Invalid_argument</dt><dd><p>if <code>n &lt; 0</code>.</p></dd></dl><dl><dt>since</dt><dd>0.6</dd></dl></dd></dl><dl><dt class="spec value" id="val-remove_all"><a href="#val-remove_all" class="anchor"></a><code><span class="keyword">val</span> remove_all : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-elt">elt</a> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></code></dt><dd><p><code>remove_all set x</code> removes all occurrences of <code>x</code> from <code>set</code>.</p><dl><dt>since</dt><dd>0.22</dd></dl></dd></dl><dl><dt class="spec value" id="val-update"><a href="#val-update" class="anchor"></a><code><span class="keyword">val</span> update : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-elt">elt</a> <span>&#45;&gt;</span> <span>(int <span>&#45;&gt;</span> int)</span> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></code></dt><dd><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><dl><dt>raises Invalid_argument</dt><dd><p>if <code>f n &lt; 0</code>.</p></dd></dl><dl><dt>since</dt><dd>0.6</dd></dl></dd></dl><dl><dt class="spec value" id="val-min"><a href="#val-min" class="anchor"></a><code><span class="keyword">val</span> min : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-elt">elt</a></code></dt><dd><p>Minimal element w.r.t the total ordering on elements.</p></dd></dl><dl><dt class="spec value" id="val-max"><a href="#val-max" class="anchor"></a><code><span class="keyword">val</span> max : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-elt">elt</a></code></dt><dd><p>Maximal element w.r.t the total ordering on elements.</p></dd></dl><dl><dt class="spec value" id="val-union"><a href="#val-union" class="anchor"></a><code><span class="keyword">val</span> union : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></code></dt><dd><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></dd></dl><dl><dt class="spec value" id="val-meet"><a href="#val-meet" class="anchor"></a><code><span class="keyword">val</span> meet : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></code></dt><dd><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></dd></dl><dl><dt class="spec value" id="val-intersection"><a href="#val-intersection" class="anchor"></a><code><span class="keyword">val</span> intersection : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></code></dt><dd><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></dd></dl><dl><dt class="spec value" id="val-diff"><a href="#val-diff" class="anchor"></a><code><span class="keyword">val</span> diff : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></code></dt><dd><p>MultiSet difference. <code>count (diff a b) x = max (count a x - count b x) 0</code>.</p></dd></dl><dl><dt class="spec value" id="val-contains"><a href="#val-contains" class="anchor"></a><code><span class="keyword">val</span> contains : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> bool</code></dt><dd><p><code>contains a x = (count m x &gt; 0)</code>.</p></dd></dl><dl><dt class="spec value" id="val-compare"><a href="#val-compare" class="anchor"></a><code><span class="keyword">val</span> compare : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> int</code></dt><dt class="spec value" id="val-equal"><a href="#val-equal" class="anchor"></a><code><span class="keyword">val</span> equal : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> bool</code></dt><dt class="spec value" id="val-cardinal"><a href="#val-cardinal" class="anchor"></a><code><span class="keyword">val</span> cardinal : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> int</code></dt><dd><p>Number of distinct elements.</p></dd></dl><dl><dt class="spec value" id="val-iter"><a href="#val-iter" class="anchor"></a><code><span class="keyword">val</span> iter : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <span>(int <span>&#45;&gt;</span> <a href="index.html#type-elt">elt</a> <span>&#45;&gt;</span> unit)</span> <span>&#45;&gt;</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 : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <span class="type-var">'b</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'b</span> <span>&#45;&gt;</span> int <span>&#45;&gt;</span> <a href="index.html#type-elt">elt</a> <span>&#45;&gt;</span> <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> <span class="type-var">'b</span></code></dt><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><a href="index.html#type-elt">elt</a> list</span> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></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 : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <span><a href="index.html#type-elt">elt</a> list</span></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 : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <span><a href="index.html#type-elt">elt</a> <a href="../index.html#type-sequence">sequence</a></span></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><a href="index.html#type-elt">elt</a> <a href="../index.html#type-sequence">sequence</a></span> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></code></dt><dt class="spec value" id="val-of_list_mult"><a href="#val-of_list_mult" class="anchor"></a><code><span class="keyword">val</span> of_list_mult : <span><span>(<a href="index.html#type-elt">elt</a> * int)</span> list</span> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></code></dt><dd><dl><dt>since</dt><dd>0.19</dd></dl></dd></dl><dl><dt class="spec value" id="val-to_list_mult"><a href="#val-to_list_mult" class="anchor"></a><code><span class="keyword">val</span> to_list_mult : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <span><span>(<a href="index.html#type-elt">elt</a> * int)</span> list</span></code></dt><dd><dl><dt>since</dt><dd>0.19</dd></dl></dd></dl><dl><dt class="spec value" id="val-to_seq_mult"><a href="#val-to_seq_mult" class="anchor"></a><code><span class="keyword">val</span> to_seq_mult : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <span><span>(<a href="index.html#type-elt">elt</a> * int)</span> <a href="../index.html#type-sequence">sequence</a></span></code></dt><dd><dl><dt>since</dt><dd>0.19</dd></dl></dd></dl><dl><dt class="spec value" id="val-of_seq_mult"><a href="#val-of_seq_mult" class="anchor"></a><code><span class="keyword">val</span> of_seq_mult : <span><span>(<a href="index.html#type-elt">elt</a> * int)</span> <a href="../index.html#type-sequence">sequence</a></span> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></code></dt><dd><dl><dt>since</dt><dd>0.19</dd></dl></dd></dl></div></body></html>