ocaml-containers/3.0/containers/CCPair/index.html
Simon Cruanes 2fa8e5f507 fix doc
2020-08-04 09:49:29 -04:00

2 lines
No EOL
15 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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>CCPair (containers.CCPair)</title><link rel="stylesheet" href="../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 1.5.1"/><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; CCPair</nav><h1>Module <code>CCPair</code></h1><h2 id="tuple-functions"><a href="#tuple-functions" class="anchor"></a>Tuple Functions</h2></header><dl><dt class="spec type" id="type-t"><a href="#type-t" class="anchor"></a><code><span class="keyword">type</span> <span>('a, 'b) t</span></code><code> = <span class="type-var">'a</span> * <span class="type-var">'b</span></code></dt></dl><dl><dt class="spec value" id="val-make"><a href="#val-make" class="anchor"></a><code><span class="keyword">val</span> make : <span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'b</span> <span>&#45;&gt;</span> <span><span>(<span class="type-var">'a</span>, <span class="type-var">'b</span>)</span> <a href="index.html#type-t">t</a></span></code></dt><dd><p>Make a tuple from its components.</p><dl><dt>since</dt><dd>0.16</dd></dl></dd></dl><dl><dt class="spec value" id="val-map_fst"><a href="#val-map_fst" class="anchor"></a><code><span class="keyword">val</span> map_fst : <span>(<span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'a</span> * <span class="type-var">'c</span>)</span> <span>&#45;&gt;</span> <span class="type-var">'b</span> * <span class="type-var">'c</span></code></dt><dd><p><code>map_fst f (x, y)</code> returns <code>(f x, y)</code>. Renamed from <code>map1</code> since 3.0.</p></dd></dl><dl><dt class="spec value" id="val-map_snd"><a href="#val-map_snd" class="anchor"></a><code><span class="keyword">val</span> map_snd : <span>(<span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'c</span> * <span class="type-var">'a</span>)</span> <span>&#45;&gt;</span> <span class="type-var">'c</span> * <span class="type-var">'b</span></code></dt><dd><p><code>map_snd f (x, y)</code> returns <code>(x, f y)</code>. Renamed from <code>map2</code> since 3.0.</p></dd></dl><dl><dt class="spec value" id="val-map"><a href="#val-map" class="anchor"></a><code><span class="keyword">val</span> map : <span>(<span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'c</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'b</span> <span>&#45;&gt;</span> <span class="type-var">'d</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'a</span> * <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> <span class="type-var">'c</span> * <span class="type-var">'d</span></code></dt><dd><p>Synonym to <code>( *** )</code>. Map on both sides of a tuple.</p></dd></dl><dl><dt class="spec value" id="val-map_same"><a href="#val-map_same" class="anchor"></a><code><span class="keyword">val</span> map_same : <span>(<span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'a</span> * <span class="type-var">'a</span>)</span> <span>&#45;&gt;</span> <span class="type-var">'b</span> * <span class="type-var">'b</span></code></dt><dd><p>Like <a href="index.html#val-map"><code>map</code></a> but specialized for pairs with elements of the same type.</p></dd></dl><dl><dt class="spec value" id="val-map2"><a href="#val-map2" class="anchor"></a><code><span class="keyword">val</span> map2 : <span>(<span class="type-var">'a1</span> <span>&#45;&gt;</span> <span class="type-var">'b1</span> <span>&#45;&gt;</span> <span class="type-var">'c1</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'a2</span> <span>&#45;&gt;</span> <span class="type-var">'b2</span> <span>&#45;&gt;</span> <span class="type-var">'c2</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'a1</span> * <span class="type-var">'a2</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'b1</span> * <span class="type-var">'b2</span>)</span> <span>&#45;&gt;</span> <span class="type-var">'c1</span> * <span class="type-var">'c2</span></code></dt><dd><p><code>map2 f g (a,b) (x,y)</code> return <code>(f a x, g b y)</code>.</p><dl><dt>since</dt><dd>3.0</dd></dl></dd></dl><dl><dt class="spec value" id="val-map_same2"><a href="#val-map_same2" class="anchor"></a><code><span class="keyword">val</span> map_same2 : <span>(<span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'b</span> <span>&#45;&gt;</span> <span class="type-var">'c</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'a</span> * <span class="type-var">'a</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'b</span> * <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> <span class="type-var">'c</span> * <span class="type-var">'c</span></code></dt><dd><p><code>map_same2 f (a,b) (x,y)</code> return <code>(f a x, f b y)</code>.</p><dl><dt>since</dt><dd>3.0</dd></dl></dd></dl><dl><dt class="spec value" id="val-fst_map"><a href="#val-fst_map" class="anchor"></a><code><span class="keyword">val</span> fst_map : <span>(<span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'a</span> * <span class="type-var">_</span>)</span> <span>&#45;&gt;</span> <span class="type-var">'b</span></code></dt><dd><p>Compose the given function with <code>fst</code>. Rename from <code>map_fst</code> since 3.0.</p><dl><dt>since</dt><dd>0.3.3</dd></dl></dd></dl><dl><dt class="spec value" id="val-snd_map"><a href="#val-snd_map" class="anchor"></a><code><span class="keyword">val</span> snd_map : <span>(<span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">_</span> * <span class="type-var">'a</span>)</span> <span>&#45;&gt;</span> <span class="type-var">'b</span></code></dt><dd><p>Compose the given function with <code>snd</code>. Rename from <code>map_snd</code> since 3.0.</p><dl><dt>since</dt><dd>0.3.3</dd></dl></dd></dl><dl><dt class="spec value" id="val-iter"><a href="#val-iter" class="anchor"></a><code><span class="keyword">val</span> iter : <span>(<span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'b</span> <span>&#45;&gt;</span> unit)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'a</span> * <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> unit</code></dt><dt class="spec value" id="val-swap"><a href="#val-swap" class="anchor"></a><code><span class="keyword">val</span> swap : <span>(<span class="type-var">'a</span> * <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> <span class="type-var">'b</span> * <span class="type-var">'a</span></code></dt><dd><p>Swap the components of the tuple.</p></dd></dl><dl><dt class="spec value" id="val-(&lt;&lt;&lt;)"><a href="#val-(&lt;&lt;&lt;)" class="anchor"></a><code><span class="keyword">val</span> (&lt;&lt;&lt;) : <span>(<span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'a</span> * <span class="type-var">'c</span>)</span> <span>&#45;&gt;</span> <span class="type-var">'b</span> * <span class="type-var">'c</span></code></dt><dd><p>Map on the left side of the tuple.</p></dd></dl><dl><dt class="spec value" id="val-(&gt;&gt;&gt;)"><a href="#val-(&gt;&gt;&gt;)" class="anchor"></a><code><span class="keyword">val</span> (&gt;&gt;&gt;) : <span>(<span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'c</span> * <span class="type-var">'a</span>)</span> <span>&#45;&gt;</span> <span class="type-var">'c</span> * <span class="type-var">'b</span></code></dt><dd><p>Map on the right side of the tuple.</p></dd></dl><dl><dt class="spec value" id="val-(***)"><a href="#val-(***)" class="anchor"></a><code><span class="keyword">val</span> (***) : <span>(<span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'c</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'b</span> <span>&#45;&gt;</span> <span class="type-var">'d</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'a</span> * <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> <span class="type-var">'c</span> * <span class="type-var">'d</span></code></dt><dd><p>Map on both sides of a tuple.</p></dd></dl><dl><dt class="spec value" id="val-(&amp;&amp;&amp;)"><a href="#val-(&amp;&amp;&amp;)" class="anchor"></a><code><span class="keyword">val</span> (&amp;&amp;&amp;) : <span>(<span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'c</span>)</span> <span>&#45;&gt;</span> <span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'b</span> * <span class="type-var">'c</span></code></dt><dd><p><code>f &amp;&amp;&amp; g</code> is <code>fun x -&gt; f x, g x</code>. It splits the computations into two parts.</p></dd></dl><dl><dt class="spec value" id="val-merge"><a href="#val-merge" class="anchor"></a><code><span class="keyword">val</span> merge : <span>(<span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'b</span> <span>&#45;&gt;</span> <span class="type-var">'c</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'a</span> * <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> <span class="type-var">'c</span></code></dt><dd><p>Uncurrying (merges the two components of a tuple).</p></dd></dl><dl><dt class="spec value" id="val-fold"><a href="#val-fold" class="anchor"></a><code><span class="keyword">val</span> fold : <span>(<span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'b</span> <span>&#45;&gt;</span> <span class="type-var">'c</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'a</span> * <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> <span class="type-var">'c</span></code></dt><dd><p>Synonym to <a href="index.html#val-merge"><code>merge</code></a>.</p><dl><dt>since</dt><dd>0.3.3</dd></dl></dd></dl><dl><dt class="spec value" id="val-dup"><a href="#val-dup" class="anchor"></a><code><span class="keyword">val</span> dup : <span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'a</span> * <span class="type-var">'a</span></code></dt><dd><p><code>dup x = (x,x)</code> (duplicate the value).</p><dl><dt>since</dt><dd>0.3.3</dd></dl></dd></dl><dl><dt class="spec value" id="val-dup_map"><a href="#val-dup_map" class="anchor"></a><code><span class="keyword">val</span> dup_map : <span>(<span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> <span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'a</span> * <span class="type-var">'b</span></code></dt><dd><p><code>dup_map f x = (x, f x)</code>. Duplicates the value and applies the function to the second copy.</p><dl><dt>since</dt><dd>0.3.3</dd></dl></dd></dl><dl><dt class="spec value" id="val-equal"><a href="#val-equal" class="anchor"></a><code><span class="keyword">val</span> equal : <span>(<span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'a</span> <span>&#45;&gt;</span> bool)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'b</span> <span>&#45;&gt;</span> <span class="type-var">'b</span> <span>&#45;&gt;</span> bool)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'a</span> * <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'a</span> * <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> bool</code></dt><dt class="spec value" id="val-compare"><a href="#val-compare" class="anchor"></a><code><span class="keyword">val</span> compare : <span>(<span class="type-var">'a</span> <span>&#45;&gt;</span> <span class="type-var">'a</span> <span>&#45;&gt;</span> int)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'b</span> <span>&#45;&gt;</span> <span class="type-var">'b</span> <span>&#45;&gt;</span> int)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'a</span> * <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'a</span> * <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> int</code></dt><dt class="spec value" id="val-to_string"><a href="#val-to_string" class="anchor"></a><code><span class="keyword">val</span> to_string : <span>?&#8288;sep:string</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'a</span> <span>&#45;&gt;</span> string)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'b</span> <span>&#45;&gt;</span> string)</span> <span>&#45;&gt;</span> <span>(<span class="type-var">'a</span> * <span class="type-var">'b</span>)</span> <span>&#45;&gt;</span> string</code></dt><dd><p>Print tuple in a string</p><dl><dt>since</dt><dd>2.7</dd></dl></dd></dl><dl><dt class="spec type" id="type-printer"><a href="#type-printer" class="anchor"></a><code><span class="keyword">type</span> <span>'a printer</span></code><code> = Stdlib.Format.formatter <span>&#45;&gt;</span> <span class="type-var">'a</span> <span>&#45;&gt;</span> unit</code></dt></dl><dl><dt class="spec value" id="val-pp"><a href="#val-pp" class="anchor"></a><code><span class="keyword">val</span> pp : <span>?&#8288;pp_start:<span>unit <a href="index.html#type-printer">printer</a></span></span> <span>&#45;&gt;</span> <span>?&#8288;pp_stop:<span>unit <a href="index.html#type-printer">printer</a></span></span> <span>&#45;&gt;</span> <span>?&#8288;pp_sep:<span>unit <a href="index.html#type-printer">printer</a></span></span> <span>&#45;&gt;</span> <span><span class="type-var">'a</span> <a href="index.html#type-printer">printer</a></span> <span>&#45;&gt;</span> <span><span class="type-var">'b</span> <a href="index.html#type-printer">printer</a></span> <span>&#45;&gt;</span> <span><span>(<span class="type-var">'a</span> * <span class="type-var">'b</span>)</span> <a href="index.html#type-printer">printer</a></span></code></dt><dd><p>Print a pair given an optional separator, an optional start and stop and a method for printing each of its elements.</p></dd></dl></div></body></html>