forked from boostorg/iterator
added const to operator*
[SVN r21599]
This commit is contained in:
@ -7,7 +7,7 @@
|
||||
<title>Filter Iterator</title>
|
||||
<meta name="author" content="David Abrahams, Jeremy Siek, Thomas Witt" />
|
||||
<meta name="organization" content="Boost Consulting, Indiana University Open Systems Lab, University of Hanover Institute for Transport Railway Operation and Construction" />
|
||||
<meta name="date" content="2003-09-14" />
|
||||
<meta name="date" content="2004-01-11" />
|
||||
<meta name="copyright" content="Copyright David Abrahams, Jeremy Siek, and Thomas Witt 2003. All rights reserved" />
|
||||
<link rel="stylesheet" href="default.css" type="text/css" />
|
||||
</head>
|
||||
@ -27,7 +27,7 @@
|
||||
Lab</a>, University of Hanover <a class="last reference" href="http://www.ive.uni-hannover.de">Institute for Transport
|
||||
Railway Operation and Construction</a></td></tr>
|
||||
<tr><th class="docinfo-name">Date:</th>
|
||||
<td>2003-09-14</td></tr>
|
||||
<td>2004-01-11</td></tr>
|
||||
<tr><th class="docinfo-name">Copyright:</th>
|
||||
<td>Copyright David Abrahams, Jeremy Siek, and Thomas Witt 2003. All rights reserved</td></tr>
|
||||
</tbody>
|
||||
@ -80,9 +80,11 @@ class filter_iterator
|
||||
);
|
||||
Predicate predicate() const;
|
||||
Iterator end() const;
|
||||
reference operator*() const;
|
||||
filter_iterator& operator++();
|
||||
};
|
||||
</pre>
|
||||
<p>The <tt class="literal"><span class="pre">iterator_category</span></tt> is a type convertible to the tags
|
||||
<p>The <tt class="literal"><span class="pre">iterator_category</span></tt> member is a type convertible to the tags
|
||||
corresponding to each standard concept modeled by <tt class="literal"><span class="pre">filter_iterator</span></tt>,
|
||||
as described in the models section.</p>
|
||||
<div class="section" id="filter-iterator-requirements">
|
||||
@ -212,8 +214,8 @@ whose <tt class="literal"><span class="pre">end</span></tt> is a default constru
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Returns:</th><td class="field-body">A <tt class="literal"><span class="pre">filter_iterator</span></tt> at position <tt class="literal"><span class="pre">x</span></tt> that filters according
|
||||
to predicate <tt class="literal"><span class="pre">f</span></tt> and that will not increment past <tt class="literal"><span class="pre">end</span></tt>.</td>
|
||||
<tr class="field"><th class="field-name">Returns:</th><td class="field-body">A <tt class="literal"><span class="pre">filter_iterator</span></tt> at the first position in the range <tt class="literal"><span class="pre">[x,end)</span></tt>
|
||||
such that <tt class="literal"><span class="pre">f(*this->base())</span> <span class="pre">==</span> <span class="pre">true</span></tt> or else at position <tt class="literal"><span class="pre">end</span></tt>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
@ -224,6 +226,10 @@ to predicate <tt class="literal"><span class="pre">f</span></tt> and that will n
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Requires:</th><td class="field-body"><tt class="literal"><span class="pre">Predicate</span></tt> must be Default Constructible.</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Returns:</th><td class="field-body">A <tt class="literal"><span class="pre">filter_iterator</span></tt> at the first position in the range <tt class="literal"><span class="pre">[x,end)</span></tt>
|
||||
such that <tt class="literal"><span class="pre">f(*this->base())</span> <span class="pre">==</span> <span class="pre">true</span></tt>, where <tt class="literal"><span class="pre">f</span></tt> is a default
|
||||
constructed <tt class="literal"><span class="pre">Predicate</span></tt>, or else at position <tt class="literal"><span class="pre">end</span></tt>.</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Returns:</th><td class="field-body">A <tt class="literal"><span class="pre">filter_iterator</span></tt> at position <tt class="literal"><span class="pre">x</span></tt> that filters
|
||||
according to a default constructed <tt class="literal"><span class="pre">Predicate</span></tt>
|
||||
and that will not increment past <tt class="literal"><span class="pre">end</span></tt>.</td>
|
||||
@ -243,7 +249,8 @@ filter_iterator(
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Requires:</th><td class="field-body"><tt class="literal"><span class="pre">OtherIterator</span></tt> is implicitly convertible to <tt class="literal"><span class="pre">Iterator</span></tt>.</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Returns:</th><td class="field-body">A copy of iterator <tt class="literal"><span class="pre">t</span></tt>.</td>
|
||||
<tr class="field"><th class="field-name">Returns:</th><td class="field-body">A filter iterator at the same position as iterator <tt class="literal"><span class="pre">t</span></tt>
|
||||
whose predicate and end are copies of <tt class="literal"><span class="pre">t.predicate</span></tt> and <tt class="literal"><span class="pre">t.end()</span></tt> .</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
@ -265,6 +272,26 @@ filter_iterator(
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><tt class="literal"><span class="pre">reference</span> <span class="pre">operator*()</span> <span class="pre">const;</span></tt></p>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><tt class="literal"><span class="pre">*(this->base())</span></tt></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><tt class="literal"><span class="pre">filter_iterator&</span> <span class="pre">operator++();</span></tt></p>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Effects:</th><td class="field-body">Increments <tt class="literal"><span class="pre">*this</span></tt> and then continues to
|
||||
increment <tt class="literal"><span class="pre">*this</span></tt> until either <tt class="literal"><span class="pre">this->base()</span> <span class="pre">==</span> <span class="pre">this->end()</span></tt>
|
||||
or <tt class="literal"><span class="pre">f(**this)</span> <span class="pre">==</span> <span class="pre">true</span></tt>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="example">
|
||||
<h1><a class="toc-backref" href="#id4" name="example">Example</a></h1>
|
||||
|
@ -20,6 +20,8 @@
|
||||
);
|
||||
Predicate predicate() const;
|
||||
Iterator end() const;
|
||||
reference operator*() const;
|
||||
filter_iterator& operator++();
|
||||
};
|
||||
|
||||
|
||||
@ -152,7 +154,7 @@ operations.
|
||||
|
||||
|
||||
|
||||
``reference operator*();``
|
||||
``reference operator*() const;``
|
||||
|
||||
:Returns: ``*(this->base())``
|
||||
|
||||
|
Reference in New Issue
Block a user