forked from boostorg/fusion
some updates
[SVN r36555]
This commit is contained in:
@ -30,7 +30,7 @@
|
||||
Sequence">Associative
|
||||
Sequence</a></h4></div></div></div>
|
||||
<a name="fusion.sequences.concepts.associative_sequence.description"></a><h5>
|
||||
<a name="id481353"></a>
|
||||
<a name="id481176"></a>
|
||||
<a href="associative_sequence.html#fusion.sequences.concepts.associative_sequence.description">Description</a>
|
||||
</h5>
|
||||
<p>
|
||||
@ -71,7 +71,7 @@
|
||||
</dl>
|
||||
</div>
|
||||
<a name="fusion.sequences.concepts.associative_sequence.valid_expressions"></a><h5>
|
||||
<a name="id481515"></a>
|
||||
<a name="id481340"></a>
|
||||
<a href="associative_sequence.html#fusion.sequences.concepts.associative_sequence.valid_expressions">Valid
|
||||
Expressions</a>
|
||||
</h5>
|
||||
@ -108,12 +108,12 @@
|
||||
<td>Constant</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/functions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">at_key</span></tt></a><span class="special"><</span><span class="identifier">K</span><span class="special">>(</span><span class="identifier">s</span><span class="special">)</span><EFBFBD><span class="special">=</span><EFBFBD><span class="identifier">o</span></tt></td>
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/functions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">at_key</span></tt></a><span class="special"><</span><span class="identifier">K</span><span class="special">>(</span><span class="identifier">s</span><span class="special">)</span> <span class="special">=</span> <span class="identifier">o</span></tt></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>
|
||||
<tt class="computeroutput"><span class="identifier">s</span></tt>
|
||||
is mutable and <tt class="computeroutput"><span class="identifier">e</span><EFBFBD><span class="special">=</span><EFBFBD><span class="identifier">o</span></tt>,
|
||||
is mutable and <tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span> <span class="identifier">o</span></tt>,
|
||||
where <tt class="computeroutput"><span class="identifier">e</span></tt> is the first
|
||||
element in the sequence, is a valid expression.</td>
|
||||
<td>Constant</td>
|
||||
@ -121,7 +121,7 @@
|
||||
</tbody>
|
||||
</table></div>
|
||||
<a name="fusion.sequences.concepts.associative_sequence.result_type_expressions"></a><h5>
|
||||
<a name="id481812"></a>
|
||||
<a name="id481636"></a>
|
||||
<a href="associative_sequence.html#fusion.sequences.concepts.associative_sequence.result_type_expressions">Result
|
||||
Type Expressions</a>
|
||||
</h5>
|
||||
@ -136,32 +136,32 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/metafunctions/has_key.html" title="has_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">has_key</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span><EFBFBD><span class="identifier">K</span><span class="special">>::</span><span class="identifier">type</span></tt></td>
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/metafunctions/has_key.html" title="has_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">has_key</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">K</span><span class="special">>::</span><span class="identifier">type</span></tt></td>
|
||||
<td>Amortized constant
|
||||
time</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/metafunctions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span><EFBFBD><span class="identifier">K</span><span class="special">>::</span><span class="identifier">type</span></tt></td>
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/metafunctions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">K</span><span class="special">>::</span><span class="identifier">type</span></tt></td>
|
||||
<td>Amortized constant
|
||||
time</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/metafunctions/value_at_key.html" title="value_at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_key</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span><EFBFBD><span class="identifier">K</span><span class="special">>::</span><span class="identifier">type</span></tt></td>
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/metafunctions/value_at_key.html" title="value_at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_key</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">K</span><span class="special">>::</span><span class="identifier">type</span></tt></td>
|
||||
<td>Amortized constant
|
||||
time</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table></div>
|
||||
<p class="blurb">
|
||||
<span class="inlinemediaobject"><img src="../../../images/note.png" alt="note"></span><EFBFBD><tt class="computeroutput"><a href="../intrinsics/metafunctions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span><EFBFBD><span class="identifier">K</span><span class="special">></span></tt>
|
||||
returns the actual type returned by <tt class="computeroutput"><a href="../intrinsics/functions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">at_key</span></tt></a><span class="special"><</span><span class="identifier">K</span><span class="special">>(</span><span class="identifier">s</span><span class="special">)</span></tt>. In
|
||||
<span class="inlinemediaobject"><img src="../../../images/note.png" alt="note"></span> <tt class="computeroutput"><a href="../intrinsics/metafunctions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">K</span><span class="special">></span></tt> returns the actual type returned by
|
||||
<tt class="computeroutput"><a href="../intrinsics/functions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">at_key</span></tt></a><span class="special"><</span><span class="identifier">K</span><span class="special">>(</span><span class="identifier">s</span><span class="special">)</span></tt>. In
|
||||
most cases, this is a reference. Hence, there is no way to know the exact
|
||||
element type using <tt class="computeroutput"><a href="../intrinsics/metafunctions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span><EFBFBD><span class="identifier">K</span><span class="special">></span></tt>.The
|
||||
element at <tt class="computeroutput"><span class="identifier">K</span></tt> may actually
|
||||
be a reference to begin with. For this purpose, you can use <tt class="computeroutput"><a href="../intrinsics/metafunctions/value_at_key.html" title="value_at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_key</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span><EFBFBD><span class="identifier">N</span><span class="special">></span></tt>.
|
||||
element type using <tt class="computeroutput"><a href="../intrinsics/metafunctions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">K</span><span class="special">></span></tt>.The element at <tt class="computeroutput"><span class="identifier">K</span></tt>
|
||||
may actually be a reference to begin with. For this purpose, you can use
|
||||
<tt class="computeroutput"><a href="../intrinsics/metafunctions/value_at_key.html" title="value_at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_key</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">N</span><span class="special">></span></tt>.
|
||||
</p>
|
||||
<a name="fusion.sequences.concepts.associative_sequence.expression_semantics"></a><h5>
|
||||
<a name="id482338"></a>
|
||||
<a name="id482160"></a>
|
||||
<a href="associative_sequence.html#fusion.sequences.concepts.associative_sequence.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h5>
|
||||
@ -179,8 +179,9 @@
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/functions/has_key.html" title="has_key"><tt class="computeroutput"><span class="identifier">has_key</span></tt></a><span class="special"><</span><span class="identifier">K</span><span class="special">>(</span><span class="identifier">s</span><span class="special">)</span></tt></td>
|
||||
<td>A
|
||||
boolean Integral Constant <tt class="computeroutput"><span class="identifier">c</span></tt>
|
||||
such that <tt class="computeroutput"><span class="identifier">c</span><span class="special">::</span><span class="identifier">value</span><EFBFBD><span class="special">==</span><EFBFBD><span class="keyword">true</span></tt> if and only if there is one or
|
||||
more elements with the key <tt class="computeroutput"><span class="identifier">k</span></tt>
|
||||
such that <tt class="computeroutput"><span class="identifier">c</span><span class="special">::</span><span class="identifier">value</span> <span class="special">==</span>
|
||||
<span class="keyword">true</span></tt> if and only if there
|
||||
is one or more elements with the key <tt class="computeroutput"><span class="identifier">k</span></tt>
|
||||
in <tt class="computeroutput"><span class="identifier">s</span></tt>; see <a href="../intrinsics/functions/has_key.html" title="has_key"><tt class="computeroutput"><span class="identifier">has_key</span></tt></a>.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -193,7 +194,7 @@
|
||||
</tbody>
|
||||
</table></div>
|
||||
<a name="fusion.sequences.concepts.associative_sequence.models"></a><h5>
|
||||
<a name="id482617"></a>
|
||||
<a name="id482439"></a>
|
||||
<a href="associative_sequence.html#fusion.sequences.concepts.associative_sequence.models">Models</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
|
@ -31,7 +31,7 @@
|
||||
Sequence">Bidirectional
|
||||
Sequence</a></h4></div></div></div>
|
||||
<a name="fusion.sequences.concepts.bidirectional_sequence.description"></a><h5>
|
||||
<a name="id478846"></a>
|
||||
<a name="id478676"></a>
|
||||
<a href="bidirectional_sequence.html#fusion.sequences.concepts.bidirectional_sequence.description">Description</a>
|
||||
</h5>
|
||||
<p>
|
||||
@ -42,7 +42,7 @@
|
||||
Iterator</a>.
|
||||
</p>
|
||||
<a name="fusion.sequences.concepts.bidirectional_sequence.refinement_of"></a><h5>
|
||||
<a name="id478897"></a>
|
||||
<a name="id478726"></a>
|
||||
<a href="bidirectional_sequence.html#fusion.sequences.concepts.bidirectional_sequence.refinement_of">Refinement
|
||||
of</a>
|
||||
</h5>
|
||||
@ -72,7 +72,7 @@
|
||||
</dl>
|
||||
</div>
|
||||
<a name="fusion.sequences.concepts.bidirectional_sequence.valid_expressions"></a><h5>
|
||||
<a name="id479017"></a>
|
||||
<a name="id478847"></a>
|
||||
<a href="bidirectional_sequence.html#fusion.sequences.concepts.bidirectional_sequence.valid_expressions">Valid
|
||||
Expressions</a>
|
||||
</h5>
|
||||
@ -120,12 +120,12 @@
|
||||
<td>Constant</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/functions/back.html" title="back"><tt class="computeroutput"><span class="identifier">back</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span><EFBFBD><span class="special">=</span><EFBFBD><span class="identifier">o</span></tt></td>
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/functions/back.html" title="back"><tt class="computeroutput"><span class="identifier">back</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span> <span class="special">=</span> <span class="identifier">o</span></tt></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>
|
||||
<tt class="computeroutput"><span class="identifier">s</span></tt>
|
||||
is mutable and <tt class="computeroutput"><span class="identifier">e</span><EFBFBD><span class="special">=</span><EFBFBD><span class="identifier">o</span></tt>,
|
||||
is mutable and <tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span> <span class="identifier">o</span></tt>,
|
||||
where <tt class="computeroutput"><span class="identifier">e</span></tt> is the first
|
||||
element in the sequence, is a valid expression.</td>
|
||||
<td>Constant</td>
|
||||
@ -133,7 +133,7 @@
|
||||
</tbody>
|
||||
</table></div>
|
||||
<a name="fusion.sequences.concepts.bidirectional_sequence.result_type_expressions"></a><h5>
|
||||
<a name="id479353"></a>
|
||||
<a name="id479182"></a>
|
||||
<a href="bidirectional_sequence.html#fusion.sequences.concepts.bidirectional_sequence.result_type_expressions">Result
|
||||
Type Expressions</a>
|
||||
</h5>
|
||||
@ -165,7 +165,7 @@
|
||||
</tbody>
|
||||
</table></div>
|
||||
<a name="fusion.sequences.concepts.bidirectional_sequence.expression_semantics"></a><h5>
|
||||
<a name="id479589"></a>
|
||||
<a name="id479418"></a>
|
||||
<a href="bidirectional_sequence.html#fusion.sequences.concepts.bidirectional_sequence.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h5>
|
||||
@ -191,7 +191,7 @@
|
||||
</tr></tbody>
|
||||
</table></div>
|
||||
<a name="fusion.sequences.concepts.bidirectional_sequence.models"></a><h5>
|
||||
<a name="id479719"></a>
|
||||
<a name="id479548"></a>
|
||||
<a href="bidirectional_sequence.html#fusion.sequences.concepts.bidirectional_sequence.models">Models</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
|
@ -30,7 +30,7 @@
|
||||
Sequence">Forward
|
||||
Sequence</a></h4></div></div></div>
|
||||
<a name="fusion.sequences.concepts.forward_sequence.description"></a><h5>
|
||||
<a name="id476797"></a>
|
||||
<a name="id476766"></a>
|
||||
<a href="forward_sequence.html#fusion.sequences.concepts.forward_sequence.description">Description</a>
|
||||
</h5>
|
||||
<p>
|
||||
@ -62,7 +62,7 @@
|
||||
</dl>
|
||||
</div>
|
||||
<a name="fusion.sequences.concepts.forward_sequence.valid_expressions"></a><h5>
|
||||
<a name="id376836"></a>
|
||||
<a name="id476883"></a>
|
||||
<a href="forward_sequence.html#fusion.sequences.concepts.forward_sequence.valid_expressions">Valid
|
||||
Expressions</a>
|
||||
</h5>
|
||||
@ -120,12 +120,12 @@
|
||||
<td>Constant</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/functions/front.html" title="front"><tt class="computeroutput"><span class="identifier">front</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span><EFBFBD><span class="special">=</span><EFBFBD><span class="identifier">o</span></tt></td>
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/functions/front.html" title="front"><tt class="computeroutput"><span class="identifier">front</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span> <span class="special">=</span> <span class="identifier">o</span></tt></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>
|
||||
<tt class="computeroutput"><span class="identifier">s</span></tt>
|
||||
is mutable and <tt class="computeroutput"><span class="identifier">e</span><EFBFBD><span class="special">=</span><EFBFBD><span class="identifier">o</span></tt>,
|
||||
is mutable and <tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span> <span class="identifier">o</span></tt>,
|
||||
where <tt class="computeroutput"><span class="identifier">e</span></tt> is the first
|
||||
element in the sequence, is a valid expression.</td>
|
||||
<td>Constant</td>
|
||||
@ -133,7 +133,7 @@
|
||||
</tbody>
|
||||
</table></div>
|
||||
<a name="fusion.sequences.concepts.forward_sequence.result_type_expressions"></a><h5>
|
||||
<a name="id477475"></a>
|
||||
<a name="id477306"></a>
|
||||
<a href="forward_sequence.html#fusion.sequences.concepts.forward_sequence.result_type_expressions">Result
|
||||
Type Expressions</a>
|
||||
</h5>
|
||||
@ -173,7 +173,7 @@
|
||||
</tbody>
|
||||
</table></div>
|
||||
<a name="fusion.sequences.concepts.forward_sequence.expression_semantics"></a><h5>
|
||||
<a name="id477827"></a>
|
||||
<a name="id477658"></a>
|
||||
<a href="forward_sequence.html#fusion.sequences.concepts.forward_sequence.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h5>
|
||||
@ -206,8 +206,9 @@
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/functions/empty.html" title="empty"><tt class="computeroutput"><span class="identifier">empty</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt></td>
|
||||
<td>A
|
||||
boolean Integral Constant <tt class="computeroutput"><span class="identifier">c</span></tt>
|
||||
such that <tt class="computeroutput"><span class="identifier">c</span><span class="special">::</span><span class="identifier">value</span><EFBFBD><span class="special">==</span><EFBFBD><span class="keyword">true</span></tt> if and only if the sequence is
|
||||
empty; see <a href="../intrinsics/functions/empty.html" title="empty"><tt class="computeroutput"><span class="identifier">empty</span></tt></a>.</td>
|
||||
such that <tt class="computeroutput"><span class="identifier">c</span><span class="special">::</span><span class="identifier">value</span> <span class="special">==</span>
|
||||
<span class="keyword">true</span></tt> if and only if the sequence
|
||||
is empty; see <a href="../intrinsics/functions/empty.html" title="empty"><tt class="computeroutput"><span class="identifier">empty</span></tt></a>.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/functions/front.html" title="front"><tt class="computeroutput"><span class="identifier">front</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt></td>
|
||||
@ -217,7 +218,7 @@
|
||||
</tbody>
|
||||
</table></div>
|
||||
<a name="fusion.sequences.concepts.forward_sequence.invariants"></a><h5>
|
||||
<a name="id478218"></a>
|
||||
<a name="id478048"></a>
|
||||
<a href="forward_sequence.html#fusion.sequences.concepts.forward_sequence.invariants">Invariants</a>
|
||||
</h5>
|
||||
<p>
|
||||
@ -225,11 +226,11 @@
|
||||
</p>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li>
|
||||
<tt class="computeroutput"><span class="special">[</span><a href="../intrinsics/functions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">begin</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">),</span><EFBFBD><a href="../intrinsics/functions/end.html" title="end"><tt class="computeroutput"><span class="identifier">end</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">))</span></tt> is always a valid range.
|
||||
<tt class="computeroutput"><span class="special">[</span><a href="../intrinsics/functions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">begin</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">),</span> <a href="../intrinsics/functions/end.html" title="end"><tt class="computeroutput"><span class="identifier">end</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">))</span></tt> is always a valid range.
|
||||
</li>
|
||||
<li>
|
||||
An <a href="../../algorithms.html" title="Algorithms">Algorithm</a> that iterates through
|
||||
the range <tt class="computeroutput"><span class="special">[</span><a href="../intrinsics/functions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">begin</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">),</span><EFBFBD><a href="../intrinsics/functions/end.html" title="end"><tt class="computeroutput"><span class="identifier">end</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">))</span></tt> will pass through every element of
|
||||
the range <tt class="computeroutput"><span class="special">[</span><a href="../intrinsics/functions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">begin</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">),</span> <a href="../intrinsics/functions/end.html" title="end"><tt class="computeroutput"><span class="identifier">end</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">))</span></tt> will pass through every element of
|
||||
<tt class="computeroutput"><span class="identifier">s</span></tt> exactly once.
|
||||
</li>
|
||||
<li>
|
||||
@ -243,7 +244,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<a name="fusion.sequences.concepts.forward_sequence.models"></a><h5>
|
||||
<a name="id478523"></a>
|
||||
<a name="id478352"></a>
|
||||
<a href="forward_sequence.html#fusion.sequences.concepts.forward_sequence.models">Models</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
|
@ -31,7 +31,7 @@
|
||||
Access Sequence">Random
|
||||
Access Sequence</a></h4></div></div></div>
|
||||
<a name="fusion.sequences.concepts.random_access_sequence.description"></a><h5>
|
||||
<a name="id479908"></a>
|
||||
<a name="id479736"></a>
|
||||
<a href="random_access_sequence.html#fusion.sequences.concepts.random_access_sequence.description">Description</a>
|
||||
</h5>
|
||||
<p>
|
||||
@ -43,7 +43,7 @@
|
||||
sequence elements.
|
||||
</p>
|
||||
<a name="fusion.sequences.concepts.random_access_sequence.refinement_of"></a><h5>
|
||||
<a name="id479960"></a>
|
||||
<a name="id479788"></a>
|
||||
<a href="random_access_sequence.html#fusion.sequences.concepts.random_access_sequence.refinement_of">Refinement
|
||||
of</a>
|
||||
</h5>
|
||||
@ -78,7 +78,7 @@
|
||||
</dl>
|
||||
</div>
|
||||
<a name="fusion.sequences.concepts.random_access_sequence.valid_expressions"></a><h5>
|
||||
<a name="id480096"></a>
|
||||
<a name="id479924"></a>
|
||||
<a href="random_access_sequence.html#fusion.sequences.concepts.random_access_sequence.valid_expressions">Valid
|
||||
Expressions</a>
|
||||
</h5>
|
||||
@ -126,12 +126,12 @@
|
||||
<td>Constant</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/functions/at.html" title="at"><tt class="computeroutput"><span class="identifier">at</span></tt></a><span class="special"><</span><span class="identifier">N</span><span class="special">>(</span><span class="identifier">s</span><span class="special">)</span><EFBFBD><span class="special">=</span><EFBFBD><span class="identifier">o</span></tt></td>
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/functions/at.html" title="at"><tt class="computeroutput"><span class="identifier">at</span></tt></a><span class="special"><</span><span class="identifier">N</span><span class="special">>(</span><span class="identifier">s</span><span class="special">)</span> <span class="special">=</span> <span class="identifier">o</span></tt></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>
|
||||
<tt class="computeroutput"><span class="identifier">s</span></tt>
|
||||
is mutable and <tt class="computeroutput"><span class="identifier">e</span><EFBFBD><span class="special">=</span><EFBFBD><span class="identifier">o</span></tt>,
|
||||
is mutable and <tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span> <span class="identifier">o</span></tt>,
|
||||
where <tt class="computeroutput"><span class="identifier">e</span></tt> is the first
|
||||
element in the sequence, is a valid expression.</td>
|
||||
<td>Constant</td>
|
||||
@ -139,7 +139,7 @@
|
||||
</tbody>
|
||||
</table></div>
|
||||
<a name="fusion.sequences.concepts.random_access_sequence.result_type_expressions"></a><h5>
|
||||
<a name="id480454"></a>
|
||||
<a name="id480280"></a>
|
||||
<a href="random_access_sequence.html#fusion.sequences.concepts.random_access_sequence.result_type_expressions">Result
|
||||
Type Expressions</a>
|
||||
</h5>
|
||||
@ -164,27 +164,27 @@
|
||||
time</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/metafunctions/at.html" title="at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span><EFBFBD><span class="identifier">N</span><span class="special">>::</span><span class="identifier">type</span></tt></td>
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/metafunctions/at.html" title="at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">N</span><span class="special">>::</span><span class="identifier">type</span></tt></td>
|
||||
<td>Amortized constant
|
||||
time</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/metafunctions/value_at.html" title="value_at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span><EFBFBD><span class="identifier">N</span><span class="special">>::</span><span class="identifier">type</span></tt></td>
|
||||
<td><tt class="computeroutput"><a href="../intrinsics/metafunctions/value_at.html" title="value_at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">N</span><span class="special">>::</span><span class="identifier">type</span></tt></td>
|
||||
<td>Amortized constant
|
||||
time</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table></div>
|
||||
<p class="blurb">
|
||||
<span class="inlinemediaobject"><img src="../../../images/note.png" alt="note"></span><EFBFBD><tt class="computeroutput"><a href="../intrinsics/metafunctions/at.html" title="at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span><EFBFBD><span class="identifier">N</span><span class="special">></span></tt>
|
||||
returns the actual type returned by <tt class="computeroutput"><a href="../intrinsics/functions/at.html" title="at"><tt class="computeroutput"><span class="identifier">at</span></tt></a><span class="special"><</span><span class="identifier">N</span><span class="special">>(</span><span class="identifier">s</span><span class="special">)</span></tt>. In
|
||||
<span class="inlinemediaobject"><img src="../../../images/note.png" alt="note"></span> <tt class="computeroutput"><a href="../intrinsics/metafunctions/at.html" title="at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">N</span><span class="special">></span></tt> returns the actual type returned by
|
||||
<tt class="computeroutput"><a href="../intrinsics/functions/at.html" title="at"><tt class="computeroutput"><span class="identifier">at</span></tt></a><span class="special"><</span><span class="identifier">N</span><span class="special">>(</span><span class="identifier">s</span><span class="special">)</span></tt>. In
|
||||
most cases, this is a reference. Hence, there is no way to know the exact
|
||||
element type using <tt class="computeroutput"><a href="../intrinsics/metafunctions/at.html" title="at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span><EFBFBD><span class="identifier">N</span><span class="special">></span></tt>.The
|
||||
element at <tt class="computeroutput"><span class="identifier">N</span></tt> may actually
|
||||
be a reference to begin with. For this purpose, you can use <tt class="computeroutput"><a href="../intrinsics/metafunctions/value_at.html" title="value_at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span><EFBFBD><span class="identifier">N</span><span class="special">></span></tt>.
|
||||
element type using <tt class="computeroutput"><a href="../intrinsics/metafunctions/at.html" title="at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">N</span><span class="special">></span></tt>.The element at <tt class="computeroutput"><span class="identifier">N</span></tt>
|
||||
may actually be a reference to begin with. For this purpose, you can use
|
||||
<tt class="computeroutput"><a href="../intrinsics/metafunctions/value_at.html" title="value_at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at</span></tt></a><span class="special"><</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">N</span><span class="special">></span></tt>.
|
||||
</p>
|
||||
<a name="fusion.sequences.concepts.random_access_sequence.expression_semantics"></a><h5>
|
||||
<a name="id481022"></a>
|
||||
<a name="id480848"></a>
|
||||
<a href="random_access_sequence.html#fusion.sequences.concepts.random_access_sequence.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h5>
|
||||
@ -210,7 +210,7 @@
|
||||
</tr></tbody>
|
||||
</table></div>
|
||||
<a name="fusion.sequences.concepts.random_access_sequence.models"></a><h5>
|
||||
<a name="id481161"></a>
|
||||
<a name="id480986"></a>
|
||||
<a href="random_access_sequence.html#fusion.sequences.concepts.random_access_sequence.models">Models</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
|
Reference in New Issue
Block a user