2004-01-27 17:03:46 +00:00
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
< html xmlns = "http://www.w3.org/1999/xhtml" xml:lang = "en" lang = "en" >
< head >
< meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" />
2007-07-06 19:47:17 +00:00
< meta name = "generator" content = "Docutils 0.5: http://docutils.sourceforge.net/" />
2004-01-27 17:03:46 +00:00
< title > Forward Traversal Concept</ title >
2007-07-06 19:47:17 +00:00
< link rel = "stylesheet" href = "../../../rst.css" type = "text/css" />
2004-01-27 17:03:46 +00:00
</ head >
< body >
2004-11-02 14:31:27 +00:00
< div class = "document" id = "forward-traversal-concept" >
2006-09-11 22:27:29 +00:00
< h1 class = "title" > Forward Traversal Concept</ h1 >
2007-07-06 19:47:17 +00:00
2006-09-11 22:27:29 +00:00
<!-- Copyright David Abrahams 2006. Distributed under the Boost -->
<!-- Software License, Version 1.0. (See accompanying -->
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
< p > A class or built-in type < tt class = "docutils literal" >< span class = "pre" > X</ span ></ tt > models the < em > Forward Traversal</ em >
concept if, in addition to < tt class = "docutils literal" >< span class = "pre" > X</ span ></ tt > meeting the requirements of Default
2004-01-27 17:03:46 +00:00
Constructible and Single Pass Iterator, the following expressions are
valid and respect the stated semantics.</ p >
2006-09-11 22:27:29 +00:00
< table border = "1" class = "docutils" >
2004-01-27 17:03:46 +00:00
< colgroup >
< col width = "38%" />
< col width = "34%" />
< col width = "27%" />
</ colgroup >
< thead valign = "bottom" >
2006-09-11 22:27:29 +00:00
< tr >< th class = "head" colspan = "3" > Forward Traversal Iterator Requirements (in addition to Default Constructible and Single Pass Iterator)</ th >
2004-01-27 17:03:46 +00:00
</ tr >
2006-09-11 22:27:29 +00:00
< tr >< th class = "head" > Expression</ th >
< th class = "head" > Return Type</ th >
< th class = "head" > Assertion/Note</ th >
2004-01-27 17:03:46 +00:00
</ tr >
</ thead >
< tbody valign = "top" >
2006-09-11 22:27:29 +00:00
< tr >< td >< tt class = "docutils literal" >< span class = "pre" > X</ span > < span class = "pre" > u;</ span ></ tt ></ td >
< td >< tt class = "docutils literal" >< span class = "pre" > X& </ span ></ tt ></ td >
< td > note: < tt class = "docutils literal" >< span class = "pre" > u</ span ></ tt > may have a
2004-01-27 17:03:46 +00:00
singular value.</ td >
</ tr >
2006-09-11 22:27:29 +00:00
< tr >< td >< tt class = "docutils literal" >< span class = "pre" > ++r</ span ></ tt ></ td >
< td >< tt class = "docutils literal" >< span class = "pre" > X& </ span ></ tt ></ td >
< td >< tt class = "docutils literal" >< span class = "pre" > r</ span > < span class = "pre" > ==</ span > < span class = "pre" > s</ span ></ tt > and < tt class = "docutils literal" >< span class = "pre" > r</ span ></ tt > is
2004-01-27 17:03:46 +00:00
dereferenceable implies
2006-09-11 22:27:29 +00:00
< tt class = "docutils literal" >< span class = "pre" > ++r</ span > < span class = "pre" > ==</ span > < span class = "pre" > ++s.</ span ></ tt ></ td >
2004-01-27 17:03:46 +00:00
</ tr >
2006-09-11 22:27:29 +00:00
< tr >< td >< tt class = "docutils literal" >< span class = "pre" > iterator_traits< X> ::difference_type</ span ></ tt ></ td >
2004-01-27 17:03:46 +00:00
< td > A signed integral type representing
the distance between iterators</ td >
< td > </ td >
</ tr >
2006-09-11 22:27:29 +00:00
< tr >< td >< tt class = "docutils literal" >< span class = "pre" > iterator_traversal< X> ::type</ span ></ tt ></ td >
2004-01-27 17:03:46 +00:00
< td > Convertible to
2006-09-11 22:27:29 +00:00
< tt class = "docutils literal" >< span class = "pre" > forward_traversal_tag</ span ></ tt ></ td >
2004-01-27 17:03:46 +00:00
< td > </ td >
</ tr >
</ tbody >
</ table >
2007-07-06 19:47:17 +00:00
</ div >
< div class = "footer" >
< hr class = "footer" />
< a class = "reference external" href = "ForwardTraversal.rst" > View document source</ a > .
Generated by < a class = "reference external" href = "http://docutils.sourceforge.net/" > Docutils</ a > from < a class = "reference external" href = "http://docutils.sourceforge.net/rst.html" > reStructuredText</ a > source.
2004-01-27 17:03:46 +00:00
</ div >
</ body >
</ html >