mirror of
https://github.com/c-cube/iter.git
synced 2025-12-06 19:25:30 -05:00
26 lines
No EOL
4.2 KiB
HTML
26 lines
No EOL
4.2 KiB
HTML
<html><head>
|
|
<link rel="stylesheet" href="style.css" type="text/css">
|
|
<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type">
|
|
<link rel="Start" href="index.html">
|
|
<link title="Index of types" rel=Appendix href="index_types.html">
|
|
<link title="Index of values" rel=Appendix href="index_values.html">
|
|
<link title="Index of modules" rel=Appendix href="index_modules.html">
|
|
<link title="Index of module types" rel=Appendix href="index_module_types.html">
|
|
<link title="Sequence" rel="Chapter" href="Sequence.html"><title>Sequence.TypeClass</title>
|
|
</head>
|
|
<body>
|
|
<code class="code"><span class="keyword">sig</span><br>
|
|
<span class="keyword">type</span> (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b) sequenceable = {<br>
|
|
to_seq : <span class="keywordsign">'</span>b <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Sequence</span>.t;<br>
|
|
of_seq : <span class="keywordsign">'</span>a <span class="constructor">Sequence</span>.t <span class="keywordsign">-></span> <span class="keywordsign">'</span>b;<br>
|
|
}<br>
|
|
<span class="keyword">type</span> (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b) addable = { empty : <span class="keywordsign">'</span>b; add : <span class="keywordsign">'</span>b <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="keywordsign">'</span>b; }<br>
|
|
<span class="keyword">type</span> <span class="keywordsign">'</span>a monoid = (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>a) <span class="constructor">Sequence</span>.<span class="constructor">TypeClass</span>.addable<br>
|
|
<span class="keyword">type</span> (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b) iterable = { iter : (<span class="keywordsign">'</span>a <span class="keywordsign">-></span> unit) <span class="keywordsign">-></span> <span class="keywordsign">'</span>b <span class="keywordsign">-></span> unit; }<br>
|
|
<span class="keyword">val</span> sequenceable : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>a <span class="constructor">Sequence</span>.t) <span class="constructor">Sequence</span>.<span class="constructor">TypeClass</span>.sequenceable<br>
|
|
<span class="keyword">val</span> iterable : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>a <span class="constructor">Sequence</span>.t) <span class="constructor">Sequence</span>.<span class="constructor">TypeClass</span>.iterable<br>
|
|
<span class="keyword">val</span> monoid : <span class="keywordsign">'</span>a <span class="constructor">Sequence</span>.t <span class="constructor">Sequence</span>.<span class="constructor">TypeClass</span>.monoid<br>
|
|
<span class="keyword">val</span> of_iterable :<br>
|
|
(<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b) <span class="constructor">Sequence</span>.<span class="constructor">TypeClass</span>.iterable <span class="keywordsign">-></span> <span class="keywordsign">'</span>b <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Sequence</span>.t<br>
|
|
<span class="keyword">val</span> to_addable : (<span class="keywordsign">'</span>a, <span class="keywordsign">'</span>b) <span class="constructor">Sequence</span>.<span class="constructor">TypeClass</span>.addable <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="constructor">Sequence</span>.t <span class="keywordsign">-></span> <span class="keywordsign">'</span>b<br>
|
|
<span class="keyword">end</span></code></body></html> |