forked from boostorg/mp11
Add more documentation.
This commit is contained in:
@@ -108,8 +108,6 @@
|
||||
<dt><span class="section"><a href="mp11.html#mp11.reference.algorithm.mp_remove_if_l_p"><code class="computeroutput"><span class="identifier">mp_remove_if</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">P</span><span class="special">></span></code></a></span></dt>
|
||||
<dt><span class="section"><a href="mp11.html#mp11.reference.algorithm.mp_partition_l_p"><code class="computeroutput"><span class="identifier">mp_partition</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">P</span><span class="special">></span></code></a></span></dt>
|
||||
<dt><span class="section"><a href="mp11.html#mp11.reference.algorithm.mp_sort_l_p"><code class="computeroutput"><span class="identifier">mp_sort</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">P</span><span class="special">></span></code></a></span></dt>
|
||||
<dt><span class="section"><a href="mp11.html#mp11.reference.algorithm.mp_find_index_l_v"><code class="computeroutput"><span class="identifier">mp_find_index</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">V</span><span class="special">></span></code></a></span></dt>
|
||||
<dt><span class="section"><a href="mp11.html#mp11.reference.algorithm.mp_find_index_if_l_p"><code class="computeroutput"><span class="identifier">mp_find_index_if</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">P</span><span class="special">></span></code></a></span></dt>
|
||||
<dt><span class="section"><a href="mp11.html#mp11.reference.algorithm.mp_find_l_v"><code class="computeroutput"><span class="identifier">mp_find</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">V</span><span class="special">></span></code></a></span></dt>
|
||||
<dt><span class="section"><a href="mp11.html#mp11.reference.algorithm.mp_find_if_l_p"><code class="computeroutput"><span class="identifier">mp_find_if</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">P</span><span class="special">></span></code></a></span></dt>
|
||||
<dt><span class="section"><a href="mp11.html#mp11.reference.algorithm.mp_reverse_l"><code class="computeroutput"><span class="identifier">mp_reverse</span><span class="special"><</span><span class="identifier">L</span><span class="special">></span></code></a></span></dt>
|
||||
@@ -859,31 +857,31 @@
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="mp11.reference.algorithm.mp_find_index_l_v"></a><a class="link" href="mp11.html#mp11.reference.algorithm.mp_find_index_l_v" title="mp_find_index<L, V>"><code class="computeroutput"><span class="identifier">mp_find_index</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">V</span><span class="special">></span></code></a>
|
||||
</h4></div></div></div>
|
||||
<pre class="programlisting"><span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">L</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">V</span><span class="special">></span> <span class="keyword">using</span> <span class="identifier">mp_find_index</span> <span class="special">=</span> <span class="comment">/*...*/</span><span class="special">;</span>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="mp11.reference.algorithm.mp_find_index_if_l_p"></a><a class="link" href="mp11.html#mp11.reference.algorithm.mp_find_index_if_l_p" title="mp_find_index_if<L, P>"><code class="computeroutput"><span class="identifier">mp_find_index_if</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">P</span><span class="special">></span></code></a>
|
||||
</h4></div></div></div>
|
||||
<pre class="programlisting"><span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">L</span><span class="special">,</span> <span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span><span class="special">...></span> <span class="keyword">class</span> <span class="identifier">P</span><span class="special">></span> <span class="keyword">using</span> <span class="identifier">mp_find_index_if</span> <span class="special">=</span> <span class="comment">/*...*/</span><span class="special">;</span>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="mp11.reference.algorithm.mp_find_l_v"></a><a class="link" href="mp11.html#mp11.reference.algorithm.mp_find_l_v" title="mp_find<L, V>"><code class="computeroutput"><span class="identifier">mp_find</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">V</span><span class="special">></span></code></a>
|
||||
</h4></div></div></div>
|
||||
<pre class="programlisting"><span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">L</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">V</span><span class="special">></span> <span class="keyword">using</span> <span class="identifier">mp_find</span> <span class="special">=</span> <span class="identifier">mp_drop</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">mp_find_index</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">V</span><span class="special">>>;</span>
|
||||
<pre class="programlisting"><span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">L</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">V</span><span class="special">></span> <span class="keyword">using</span> <span class="identifier">mp_find</span> <span class="special">=</span> <span class="comment">/*...*/</span><span class="special">;</span>
|
||||
</pre>
|
||||
<p>
|
||||
<code class="computeroutput"><span class="identifier">mp_find</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">V</span><span class="special">></span></code> is an alias for <code class="computeroutput"><span class="identifier">mp_size_t</span><span class="special"><</span><span class="identifier">I</span><span class="special">></span></code>, where <code class="computeroutput"><span class="identifier">I</span></code>
|
||||
is the zero-based index of the first occurence of <code class="computeroutput"><span class="identifier">V</span></code>
|
||||
in <code class="computeroutput"><span class="identifier">L</span></code>. If <code class="computeroutput"><span class="identifier">L</span></code> does not contain <code class="computeroutput"><span class="identifier">V</span></code>,
|
||||
<code class="computeroutput"><span class="identifier">mp_find</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">V</span><span class="special">></span></code> is <code class="computeroutput"><span class="identifier">mp_size</span><span class="special"><</span><span class="identifier">L</span><span class="special">></span></code>.
|
||||
</p>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="mp11.reference.algorithm.mp_find_if_l_p"></a><a class="link" href="mp11.html#mp11.reference.algorithm.mp_find_if_l_p" title="mp_find_if<L, P>"><code class="computeroutput"><span class="identifier">mp_find_if</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">P</span><span class="special">></span></code></a>
|
||||
</h4></div></div></div>
|
||||
<pre class="programlisting"><span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">L</span><span class="special">,</span> <span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span><span class="special">...></span> <span class="keyword">class</span> <span class="identifier">P</span><span class="special">></span> <span class="keyword">using</span> <span class="identifier">mp_find_if</span> <span class="special">=</span> <span class="identifier">mp_drop</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">mp_find_index_if</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">P</span><span class="special">>>;</span>
|
||||
<pre class="programlisting"><span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">L</span><span class="special">,</span> <span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span><span class="special">...></span> <span class="keyword">class</span> <span class="identifier">P</span><span class="special">></span> <span class="keyword">using</span> <span class="identifier">mp_find_if</span> <span class="special">=</span> <span class="comment">/*...*/</span><span class="special">;</span>
|
||||
</pre>
|
||||
<p>
|
||||
<code class="computeroutput"><span class="identifier">mp_find_f</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">P</span><span class="special">></span></code> is an alias for <code class="computeroutput"><span class="identifier">mp_size_t</span><span class="special"><</span><span class="identifier">I</span><span class="special">></span></code>, where <code class="computeroutput"><span class="identifier">I</span></code>
|
||||
is the zero-based index of the first element <code class="computeroutput"><span class="identifier">T</span></code>
|
||||
in <code class="computeroutput"><span class="identifier">L</span></code> for which <code class="computeroutput"><span class="identifier">mp_to_bool</span><span class="special"><</span><span class="identifier">P</span><span class="special"><</span><span class="identifier">T</span><span class="special">>></span></code>
|
||||
is <code class="computeroutput"><span class="identifier">mp_true</span></code>. If there is
|
||||
no such element, <code class="computeroutput"><span class="identifier">mp_find</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">V</span><span class="special">></span></code>
|
||||
is <code class="computeroutput"><span class="identifier">mp_size</span><span class="special"><</span><span class="identifier">L</span><span class="special">></span></code>.
|
||||
</p>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
@@ -891,6 +889,9 @@
|
||||
</h4></div></div></div>
|
||||
<pre class="programlisting"><span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">L</span><span class="special">></span> <span class="keyword">using</span> <span class="identifier">mp_reverse</span> <span class="special">=</span> <span class="comment">/*...*/</span><span class="special">;</span>
|
||||
</pre>
|
||||
<p>
|
||||
<code class="computeroutput"><span class="identifier">mp_reverse</span><span class="special"><</span><span class="identifier">L</span><span class="special"><</span><span class="identifier">T1</span><span class="special">,</span> <span class="identifier">T2</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">Tn</span><span class="special">>></span></code> is <code class="computeroutput"><span class="identifier">L</span><span class="special"><</span><span class="identifier">Tn</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">T2</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">></span></code>.
|
||||
</p>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
@@ -898,6 +899,15 @@
|
||||
</h4></div></div></div>
|
||||
<pre class="programlisting"><span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">L</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">V</span><span class="special">,</span> <span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span><span class="special">...></span> <span class="keyword">class</span> <span class="identifier">F</span><span class="special">></span> <span class="keyword">using</span> <span class="identifier">mp_fold</span> <span class="special">=</span> <span class="comment">/*...*/</span><span class="special">;</span>
|
||||
</pre>
|
||||
<p>
|
||||
<code class="computeroutput"><span class="identifier">mp_fold</span><span class="special"><</span><span class="identifier">L</span><span class="special"><</span><span class="identifier">T1</span><span class="special">,</span> <span class="identifier">T2</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">Tn</span><span class="special">>,</span> <span class="identifier">V</span><span class="special">,</span> <span class="identifier">F</span><span class="special">></span></code>
|
||||
is <code class="computeroutput"><span class="identifier">F</span><span class="special"><</span>
|
||||
<span class="identifier">F</span><span class="special"><</span>
|
||||
<span class="identifier">F</span><span class="special"><</span>
|
||||
<span class="identifier">F</span><span class="special"><</span><span class="identifier">V</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">>,</span> <span class="identifier">T2</span><span class="special">>,</span> <span class="special">...>,</span>
|
||||
<span class="identifier">Tn</span><span class="special">></span></code>,
|
||||
or <code class="computeroutput"><span class="identifier">V</span></code>, if <code class="computeroutput"><span class="identifier">L</span></code> is empty.
|
||||
</p>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
@@ -905,6 +915,11 @@
|
||||
</h4></div></div></div>
|
||||
<pre class="programlisting"><span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">L</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">V</span><span class="special">,</span> <span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span><span class="special">...></span> <span class="keyword">class</span> <span class="identifier">F</span><span class="special">></span> <span class="keyword">using</span> <span class="identifier">mp_reverse_fold</span> <span class="special">=</span> <span class="comment">/*...*/</span><span class="special">;</span>
|
||||
</pre>
|
||||
<p>
|
||||
<code class="computeroutput"><span class="identifier">mp_reverse_fold</span><span class="special"><</span><span class="identifier">L</span><span class="special"><</span><span class="identifier">T1</span><span class="special">,</span> <span class="identifier">T2</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">Tn</span><span class="special">>,</span> <span class="identifier">V</span><span class="special">,</span> <span class="identifier">F</span><span class="special">></span></code>
|
||||
is <code class="computeroutput"><span class="identifier">F</span><span class="special"><</span><span class="identifier">T1</span><span class="special">,</span> <span class="identifier">F</span><span class="special"><</span><span class="identifier">T2</span><span class="special">,</span> <span class="identifier">F</span><span class="special"><...,</span> <span class="identifier">F</span><span class="special"><</span><span class="identifier">Tn</span><span class="special">,</span> <span class="identifier">V</span><span class="special">>>>></span></code>,
|
||||
or <code class="computeroutput"><span class="identifier">V</span></code>, if <code class="computeroutput"><span class="identifier">L</span></code> is empty.
|
||||
</p>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
@@ -912,6 +927,11 @@
|
||||
</h4></div></div></div>
|
||||
<pre class="programlisting"><span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">L</span><span class="special">></span> <span class="keyword">using</span> <span class="identifier">mp_unique</span> <span class="special">=</span> <span class="comment">/*...*/</span><span class="special">;</span>
|
||||
</pre>
|
||||
<p>
|
||||
<code class="computeroutput"><span class="identifier">mp_unique</span><span class="special"><</span><span class="identifier">L</span><span class="special">></span></code>
|
||||
returns a list of the same type as <code class="computeroutput"><span class="identifier">L</span></code>
|
||||
with the duplicate elements removed.
|
||||
</p>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
@@ -919,6 +939,13 @@
|
||||
</h4></div></div></div>
|
||||
<pre class="programlisting"><span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">L</span><span class="special">,</span> <span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span><span class="special">...></span> <span class="keyword">class</span> <span class="identifier">P</span><span class="special">></span> <span class="keyword">using</span> <span class="identifier">mp_all_of</span> <span class="special">=</span> <span class="identifier">mp_bool</span><span class="special"><</span> <span class="identifier">mp_count_if</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">P</span><span class="special">>::</span><span class="identifier">value</span> <span class="special">==</span> <span class="identifier">mp_size</span><span class="special"><</span><span class="identifier">L</span><span class="special">>::</span><span class="identifier">value</span> <span class="special">>;</span>
|
||||
</pre>
|
||||
<p>
|
||||
<code class="computeroutput"><span class="identifier">mp_all_of</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">P</span><span class="special">></span></code> is <code class="computeroutput"><span class="identifier">mp_true</span></code>
|
||||
when <code class="computeroutput"><span class="identifier">P</span></code> holds for all elements
|
||||
of <code class="computeroutput"><span class="identifier">L</span></code>, <code class="computeroutput"><span class="identifier">mp_false</span></code>
|
||||
otherwise. When <code class="computeroutput"><span class="identifier">L</span></code> is empty,
|
||||
the result is <code class="computeroutput"><span class="identifier">mp_true</span></code>.
|
||||
</p>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
@@ -926,6 +953,13 @@
|
||||
</h4></div></div></div>
|
||||
<pre class="programlisting"><span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">L</span><span class="special">,</span> <span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span><span class="special">...></span> <span class="keyword">class</span> <span class="identifier">P</span><span class="special">></span> <span class="keyword">using</span> <span class="identifier">mp_none_of</span> <span class="special">=</span> <span class="identifier">mp_bool</span><span class="special"><</span> <span class="identifier">mp_count_if</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">P</span><span class="special">>::</span><span class="identifier">value</span> <span class="special">==</span> <span class="number">0</span> <span class="special">>;</span>
|
||||
</pre>
|
||||
<p>
|
||||
<code class="computeroutput"><span class="identifier">mp_none_of</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">P</span><span class="special">></span></code> is <code class="computeroutput"><span class="identifier">mp_true</span></code>
|
||||
when <code class="computeroutput"><span class="identifier">P</span></code> holds for no element
|
||||
of <code class="computeroutput"><span class="identifier">L</span></code>, <code class="computeroutput"><span class="identifier">mp_false</span></code>
|
||||
otherwise. When <code class="computeroutput"><span class="identifier">L</span></code> is empty,
|
||||
the result is <code class="computeroutput"><span class="identifier">mp_true</span></code>.
|
||||
</p>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
@@ -933,6 +967,11 @@
|
||||
</h4></div></div></div>
|
||||
<pre class="programlisting"><span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">L</span><span class="special">,</span> <span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span><span class="special">...></span> <span class="keyword">class</span> <span class="identifier">P</span><span class="special">></span> <span class="keyword">using</span> <span class="identifier">mp_any_of</span> <span class="special">=</span> <span class="identifier">mp_bool</span><span class="special"><</span> <span class="identifier">mp_count_if</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">P</span><span class="special">>::</span><span class="identifier">value</span> <span class="special">!=</span> <span class="number">0</span> <span class="special">>;</span>
|
||||
</pre>
|
||||
<p>
|
||||
<code class="computeroutput"><span class="identifier">mp_any_of</span><span class="special"><</span><span class="identifier">L</span><span class="special">,</span> <span class="identifier">P</span><span class="special">></span></code> is <code class="computeroutput"><span class="identifier">mp_true</span></code>
|
||||
when <code class="computeroutput"><span class="identifier">P</span></code> holds for at least
|
||||
one element of <code class="computeroutput"><span class="identifier">L</span></code>, <code class="computeroutput"><span class="identifier">mp_false</span></code> otherwise. When <code class="computeroutput"><span class="identifier">L</span></code> is empty, the result is <code class="computeroutput"><span class="identifier">mp_false</span></code>.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="section">
|
||||
@@ -1067,7 +1106,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
<td align="left"><p><small>Last revised: March 15, 2017 at 17:28:31 GMT</small></p></td>
|
||||
<td align="left"><p><small>Last revised: March 15, 2017 at 18:15:15 GMT</small></p></td>
|
||||
<td align="right"><div class="copyright-footer"></div></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
|
@@ -169,48 +169,60 @@ for the elements of `L<U1...>` and `mp_false` for the elements of `L<U2...>`. Re
|
||||
`mp_sort<L, P>` sorts the list `L` according to the strict weak ordering `mp_to_bool<P<T, U>>`.
|
||||
[endsect]
|
||||
|
||||
[section `mp_find_index<L, V>`]
|
||||
template<class L, class V> using mp_find_index = /*...*/;
|
||||
[endsect]
|
||||
|
||||
[section `mp_find_index_if<L, P>`]
|
||||
template<class L, template<class...> class P> using mp_find_index_if = /*...*/;
|
||||
[endsect]
|
||||
|
||||
[section `mp_find<L, V>`]
|
||||
template<class L, class V> using mp_find = mp_drop<L, mp_find_index<L, V>>;
|
||||
template<class L, class V> using mp_find = /*...*/;
|
||||
|
||||
`mp_find<L, V>` is an alias for `mp_size_t<I>`, where `I` is the zero-based index of the first occurence of `V` in `L`. If
|
||||
`L` does not contain `V`, `mp_find<L, V>` is `mp_size<L>`.
|
||||
[endsect]
|
||||
|
||||
[section `mp_find_if<L, P>`]
|
||||
template<class L, template<class...> class P> using mp_find_if = mp_drop<L, mp_find_index_if<L, P>>;
|
||||
template<class L, template<class...> class P> using mp_find_if = /*...*/;
|
||||
|
||||
`mp_find_f<L, P>` is an alias for `mp_size_t<I>`, where `I` is the zero-based index of the first element `T` in `L` for which
|
||||
`mp_to_bool<P<T>>` is `mp_true`. If there is no such element, `mp_find<L, V>` is `mp_size<L>`.
|
||||
[endsect]
|
||||
|
||||
[section `mp_reverse<L>`]
|
||||
template<class L> using mp_reverse = /*...*/;
|
||||
|
||||
`mp_reverse<L<T1, T2, ..., Tn>>` is `L<Tn, ..., T2, T1>`.
|
||||
[endsect]
|
||||
|
||||
[section `mp_fold<L, V, F>`]
|
||||
template<class L, class V, template<class...> class F> using mp_fold = /*...*/;
|
||||
|
||||
`mp_fold<L<T1, T2, ..., Tn>, V, F>` is `F< F< F< F<V, T1>, T2>, ...>, Tn>`, or `V`, if `L` is empty.
|
||||
[endsect]
|
||||
|
||||
[section `mp_reverse_fold<L, V, F>`]
|
||||
template<class L, class V, template<class...> class F> using mp_reverse_fold = /*...*/;
|
||||
|
||||
`mp_reverse_fold<L<T1, T2, ..., Tn>, V, F>` is `F<T1, F<T2, F<..., F<Tn, V>>>>`, or `V`, if `L` is empty.
|
||||
[endsect]
|
||||
|
||||
[section `mp_unique<L>`]
|
||||
template<class L> using mp_unique = /*...*/;
|
||||
|
||||
`mp_unique<L>` returns a list of the same type as `L` with the duplicate elements removed.
|
||||
[endsect]
|
||||
|
||||
[section `mp_all_of<L, P>`]
|
||||
template<class L, template<class...> class P> using mp_all_of = mp_bool< mp_count_if<L, P>::value == mp_size<L>::value >;
|
||||
|
||||
`mp_all_of<L, P>` is `mp_true` when `P` holds for all elements of `L`, `mp_false` otherwise. When `L` is empty, the result is `mp_true`.
|
||||
[endsect]
|
||||
|
||||
[section `mp_none_of<L, P>`]
|
||||
template<class L, template<class...> class P> using mp_none_of = mp_bool< mp_count_if<L, P>::value == 0 >;
|
||||
|
||||
`mp_none_of<L, P>` is `mp_true` when `P` holds for no element of `L`, `mp_false` otherwise. When `L` is empty, the result is `mp_true`.
|
||||
[endsect]
|
||||
|
||||
[section `mp_any_of<L, P>`]
|
||||
template<class L, template<class...> class P> using mp_any_of = mp_bool< mp_count_if<L, P>::value != 0 >;
|
||||
|
||||
`mp_any_of<L, P>` is `mp_true` when `P` holds for at least one element of `L`, `mp_false` otherwise. When `L` is empty, the result is `mp_false`.
|
||||
[endsect]
|
||||
|
||||
[endsect]
|
||||
|
Reference in New Issue
Block a user