Boost logo

Boost-Commit :

From: asutton_at_[hidden]
Date: 2007-08-31 11:42:15


Author: asutton
Date: 2007-08-31 11:42:11 EDT (Fri, 31 Aug 2007)
New Revision: 39085
URL: http://svn.boost.org/trac/boost/changeset/39085

Log:
More docs

Added:
   sandbox/boost_docs/trunk/libs/standard/doc/templates.qbk (contents, props changed)
Text files modified:
   sandbox/boost_docs/trunk/libs/standard/doc/Jamfile | 129 ++++++++++++++++++---------------------
   sandbox/boost_docs/trunk/libs/standard/doc/concepts/containers/container.qbk | 25 +++++++
   sandbox/boost_docs/trunk/libs/standard/doc/concepts/containers/forward_container.qbk | 13 ++++
   sandbox/boost_docs/trunk/libs/standard/doc/concepts/containers/random_access_container.qbk | 50 +++++++++++++++
   sandbox/boost_docs/trunk/libs/standard/doc/concepts/containers/reversible_container.qbk | 10 --
   sandbox/boost_docs/trunk/libs/standard/doc/concepts/utilities/default_constructible.qbk | 10 +-
   sandbox/boost_docs/trunk/libs/standard/doc/std.qbk | 16 ----
   7 files changed, 154 insertions(+), 99 deletions(-)

Modified: sandbox/boost_docs/trunk/libs/standard/doc/Jamfile
==============================================================================
--- sandbox/boost_docs/trunk/libs/standard/doc/Jamfile (original)
+++ sandbox/boost_docs/trunk/libs/standard/doc/Jamfile 2007-08-31 11:42:11 EDT (Fri, 31 Aug 2007)
@@ -7,73 +7,62 @@
 
 xml std : std.qbk ;
 
-boostbook standalone
- :
- std
- :
- # HTML options first:
- # Use graphics not text for navigation:
- <xsl:param>navig.graphics=1
- # How far down we chunk nested sections, basically all of them:
- <xsl:param>chunk.section.depth=10
- # Don't put the first section on the same page as the TOC:
- <xsl:param>chunk.first.sections=1
- # How far down sections get TOC's
- <xsl:param>toc.section.depth=10
- # Max depth in each TOC:
- <xsl:param>toc.max.depth=4
- # How far down we go with TOC's
- <xsl:param>generate.section.toc.level=10
- # Logo location:
- <xsl:param>boost.logo=../boost.png
- <xsl:param>annotation.support=1
-
- # The page style
- <xsl:param>page.style="'website'"
- # Show chapters select box
- <xsl:param>grouped.links.chapters.show="'true'"
- # GroupedLinks xml definition chapters location
- <xsl:param>grouped.links.chapters.xml="'boost_libs_grouped_links.xml'"
- # Select the base url for the chapters GroupedLinks
- <xsl:param>grouped.links.chapters.url="'http://www.boost.org/libs/'"
- # Show sections select box
- <xsl:param>grouped.links.sections.show="'true'"
- # GroupedLinks xml definition sections location
- <xsl:param>grouped.links.sections.xml="'sections_grouped_links.xml'"
- # Select the base url for the chapters GroupedLinks
- <xsl:param>grouped.links.sections.url="'./'"
- # Show the Google Search Box
- <xsl:param>search.box.show="'true'"
- # Location of the cse defintion
- <xsl:param>search.box.cse.definition.src="'http://www.drivehq.com/web/matias.capeletto/bimap/doc/html/context8.xml'"
-
- # PDF Options:
- # TOC Generation: this is needed for FOP-0.9 and later:
- # <xsl:param>fop1.extensions=1
- <xsl:param>xep.extensions=1
- # TOC generation: this is needed for FOP 0.2, but must not be set to zero for FOP-0.9!
- <xsl:param>fop.extensions=0
- # No indent on body text:
- <xsl:param>body.start.indent=0pt
- # Margin size:
- <xsl:param>page.margin.inner=0.5in
- # Margin size:
- <xsl:param>page.margin.outer=0.5in
- # Yes, we want graphics for admonishments:
- <xsl:param>admon.graphics=1
- # Set this one for PDF generation *only*:
- # default pnd graphics are awful in PDF form,
- # better use SVG's instead:
- #<xsl:param>admon.graphics.extension=".svg"
- ;
-
-
-
-
-
-
-
-
-
-
-
+# boostbook standalone
+# :
+# std
+# :
+# # HTML options first:
+# # Use graphics not text for navigation:
+# <xsl:param>navig.graphics=1
+# # How far down we chunk nested sections, basically all of them:
+# <xsl:param>chunk.section.depth=10
+# # Don't put the first section on the same page as the TOC:
+# <xsl:param>chunk.first.sections=1
+# # How far down sections get TOC's
+# <xsl:param>toc.section.depth=10
+# # Max depth in each TOC:
+# <xsl:param>toc.max.depth=4
+# # How far down we go with TOC's
+# <xsl:param>generate.section.toc.level=10
+# # Logo location:
+# <xsl:param>boost.logo=../boost.png
+# <xsl:param>annotation.support=1
+#
+# # The page style
+# <xsl:param>page.style="'website'"
+# # Show chapters select box
+# <xsl:param>grouped.links.chapters.show="'true'"
+# # GroupedLinks xml definition chapters location
+# <xsl:param>grouped.links.chapters.xml="'boost_libs_grouped_links.xml'"
+# # Select the base url for the chapters GroupedLinks
+# <xsl:param>grouped.links.chapters.url="'http://www.boost.org/libs/'"
+# # Show sections select box
+# <xsl:param>grouped.links.sections.show="'true'"
+# # GroupedLinks xml definition sections location
+# <xsl:param>grouped.links.sections.xml="'sections_grouped_links.xml'"
+# # Select the base url for the chapters GroupedLinks
+# <xsl:param>grouped.links.sections.url="'./'"
+# # Show the Google Search Box
+# <xsl:param>search.box.show="'true'"
+# # Location of the cse defintion
+# <xsl:param>search.box.cse.definition.src="'http://www.drivehq.com/web/matias.capeletto/bimap/doc/html/context8.xml'"
+#
+# # PDF Options:
+# # TOC Generation: this is needed for FOP-0.9 and later:
+# # <xsl:param>fop1.extensions=1
+# <xsl:param>xep.extensions=1
+# # TOC generation: this is needed for FOP 0.2, but must not be set to zero for FOP-0.9!
+# <xsl:param>fop.extensions=0
+# # No indent on body text:
+# <xsl:param>body.start.indent=0pt
+# # Margin size:
+# <xsl:param>page.margin.inner=0.5in
+# # Margin size:
+# <xsl:param>page.margin.outer=0.5in
+# # Yes, we want graphics for admonishments:
+# <xsl:param>admon.graphics=1
+# # Set this one for PDF generation *only*:
+# # default pnd graphics are awful in PDF form,
+# # better use SVG's instead:
+# #<xsl:param>admon.graphics.extension=".svg"
+# ;

Modified: sandbox/boost_docs/trunk/libs/standard/doc/concepts/containers/container.qbk
==============================================================================
--- sandbox/boost_docs/trunk/libs/standard/doc/concepts/containers/container.qbk (original)
+++ sandbox/boost_docs/trunk/libs/standard/doc/concepts/containers/container.qbk 2007-08-31 11:42:11 EDT (Fri, 31 Aug 2007)
@@ -206,6 +206,31 @@
     ]
 ]
 
+[heading Invariants]
+[table
+ [[Name] [Description]]
+ [
+ [Valid Range]
+ [
+ \[`c.begin()`, `c.end()`) is a valid range.
+ ]
+ ]
+ [
+ [Range Size]
+ [
+ `c.size()` is the same as the distance from `a.begin()` to `a.end()`.
+ ]
+ ]
+ [
+ [Completeness]
+ [
+ Iterating over the elements in the range \[c.begin(), c.end()) will iterate
+ over every element contained by `c`.
+ ]
+ ]
+]
+
+
 [heading Examples]
 A type `C` is required to be a container if it explicitly refers to any of
 its associated types or calls any of its member functions.

Modified: sandbox/boost_docs/trunk/libs/standard/doc/concepts/containers/forward_container.qbk
==============================================================================
--- sandbox/boost_docs/trunk/libs/standard/doc/concepts/containers/forward_container.qbk (original)
+++ sandbox/boost_docs/trunk/libs/standard/doc/concepts/containers/forward_container.qbk 2007-08-31 11:42:11 EDT (Fri, 31 Aug 2007)
@@ -58,6 +58,19 @@
     ]
 ]
 
+[heading Invariants]
+[table
+ [[Name] [Description]]
+ [
+ [Ordering]
+ [
+ Subsequent iterations through the elements of a [ForwardContainer] will access
+ its elements in the same order, providing there have been no intervening mutative
+ operations (i.e., insertions or erasures).
+ ]
+ ]
+]
+
 [heading Examples]
 
 [endsect]
\ No newline at end of file

Modified: sandbox/boost_docs/trunk/libs/standard/doc/concepts/containers/random_access_container.qbk
==============================================================================
--- sandbox/boost_docs/trunk/libs/standard/doc/concepts/containers/random_access_container.qbk (original)
+++ sandbox/boost_docs/trunk/libs/standard/doc/concepts/containers/random_access_container.qbk 2007-08-31 11:42:11 EDT (Fri, 31 Aug 2007)
@@ -6,5 +6,55 @@
  /]
 
 [section Random Access Container]
+A type `C` is a /random access container/ if an object of type `C` is a [ReversibleContainer]
+that provides amortized constant time access to any element it contains.
+
+The iterators of a [RandomAccessContainer] model the [RandomAccessIterator] concept.
+
+[heading Refinement Of]
+[ReversibleContainer]
+
+[heading Notation]
+[table
+ [[Expression] [Description]]
+ [[`C`] [A type that models the [RandomAccessContainer] concept.]]
+ [[`c`, `d`] [Objects of type `C`.]]
+ [[`T`] [The type of an object stored by `C`.]]
+ [[`n`] [An object convertible to type `C::size_type`.]]
+]
+
+[heading Requirements]
+[table
+ [[Name] [Expression] [Result Type] [Description]]
+ [
+ [Element Access]
+ [`c[n]`]
+ [
+ `C::reference` if `c` is mutable[br]
+ `C::const_reference` otherwise.
+ ]
+ [
+ Returns the `n`[super th] element from the beginning of the contaner.
+
+ *Requirements:* `n` is convertible to `C::size_type`.
+
+ *Complexity:* Amortized constant.
+ ]
+ ]
+]
+
+[heading Invariants]
+[table
+ [[Name] [Description]]
+ [
+ [Element Access]
+ [
+ The element `c[n]` is the same as that obtained by incrementing `a.begin()`
+ `n` times and dereferencing the resulting iterator.
+ ]
+ ]
+]
+
+[heading Examples]
 
 [endsect]
\ No newline at end of file

Modified: sandbox/boost_docs/trunk/libs/standard/doc/concepts/containers/reversible_container.qbk
==============================================================================
--- sandbox/boost_docs/trunk/libs/standard/doc/concepts/containers/reversible_container.qbk (original)
+++ sandbox/boost_docs/trunk/libs/standard/doc/concepts/containers/reversible_container.qbk 2007-08-31 11:42:11 EDT (Fri, 31 Aug 2007)
@@ -9,7 +9,7 @@
 A type `C` is a /reversible container/ if an object of type `C` is a [ForwardContainer]
 that allows backwards iteration through the container.
 
-The iterators of a [ReversibleContainer] model the [BidirectionalIterators] concept.
+The iterators of a [ReversibleContainer] model the [BidirectionalIterator] concept.
 Containers modeling this concept support "multipass" algorithsm and allow multiple
 iterators into the same container to be active at the same time.
 
@@ -109,12 +109,4 @@
 
 [heading Examples]
 
- // Asserts that the forward and reverse iterator ranges of a container
- // are the same distance.
- template <typename C>
- void equivalent_ranges(const C& c)
- {
- assert(distance(c.begin(), c.end) == distance(c.rbegin(), c.rend()));
- }
-
 [endsect]
\ No newline at end of file

Modified: sandbox/boost_docs/trunk/libs/standard/doc/concepts/utilities/default_constructible.qbk
==============================================================================
--- sandbox/boost_docs/trunk/libs/standard/doc/concepts/utilities/default_constructible.qbk (original)
+++ sandbox/boost_docs/trunk/libs/standard/doc/concepts/utilities/default_constructible.qbk 2007-08-31 11:42:11 EDT (Fri, 31 Aug 2007)
@@ -12,20 +12,20 @@
 that can be called without arguments.
 
 [note
-[StdDefaultConstructible] types may or may not initialize objects to a default value
+[DefaultConstructible] types may or may not initialize objects to a default value
 or state depending on the type itself and the syntax used for construction. Objects
 that are not initialized to a default are /uninitialized. Reading from or otherwise
 using uninitialized objects often results in undefined behavior.
 ]
 
 [heading Refinement of]
-[StdDestructible]
+[Destructible]
 
 [heading Notation]
 The following expressions are used in this document:
 [table
     [[Expression] [Description]]
- [[T] [A [StdDefaultConstructible] type.]]
+ [[T] [A [DefaultConstructible] type.]]
     [[x] [An object of type `T`.]]
 ]
 
@@ -56,10 +56,10 @@
 
 [heading Notes]
 If the default constructor of a class type `T` is `private`, then the `T` does not
-model the [StdDefaultConstructible] concept.
+model the [DefaultConstructible] concept.
 
 [heading Examples]
-A type `T` is required to be [StdDefaultConstructible] when an object of type `T` is
+A type `T` is required to be [DefaultConstructible] when an object of type `T` is
 declared or when the default constructor of `T` is invoked without arguments.
 
     // Declaring a variable without explicitly calling a constructor requires a

Modified: sandbox/boost_docs/trunk/libs/standard/doc/std.qbk
==============================================================================
--- sandbox/boost_docs/trunk/libs/standard/doc/std.qbk (original)
+++ sandbox/boost_docs/trunk/libs/standard/doc/std.qbk 2007-08-31 11:42:11 EDT (Fri, 31 Aug 2007)
@@ -19,21 +19,7 @@
     ]
 ]
 
-[/ Quick Reference Templates /]
-[template Destructible[] [link standards.concepts.utilities.destructible [^Destructible]]]
-[template DefaultConstructible[] [link standard.concepts.utilities.default_constructible [^DefaultConstructible]]]
-[template CopyConstructible[] [link standard.concepts.utilities.copy_constructible [^CopyConstructible]]]
-[template Assignable[] [link standard.concepts.utilities.assignable [^Assignable]]]
-[template EqualityComparable[] [link standard.concepts.utilities.equality_comparable [^EqualityComparable]]]
-[template LessThanComparable[] [link standard.concepts.utilities.less_than_comparable [^LessThanComparable]]]
-
-[template Container[] [link standard.concepts.containers.general_concepts.container [^Container]]]
-
-[template InputIterator[] [link standard.concepts.iterators.input_iterator [^InputIterator]]]
-[template OutputIterator[] [link standard.concepts.iterators.output_iterator [^OutputIterator]]]
-[template ForwardIterator[] [link standard.concepts.iterators.forward_iterator [^ForwardIterator]]]
-[template BidirectionalIterator[] [link standard.concepts.iterators.bidirectional_iterator [^BidirectionalIterator]]]
-[template RandomAccessIterator[] [link standard.concepts.iterators.random_access_iterator [^RandomAccessIterator]]]
+[include templates.qbk]
 
 [/ Contents ]
 [include concepts/concepts.qbk]

Added: sandbox/boost_docs/trunk/libs/standard/doc/templates.qbk
==============================================================================
--- (empty file)
+++ sandbox/boost_docs/trunk/libs/standard/doc/templates.qbk 2007-08-31 11:42:11 EDT (Fri, 31 Aug 2007)
@@ -0,0 +1,62 @@
+[/
+ / Copyright (c) 2007 Andrew Sutton
+ /
+ / 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)
+ /]
+
+[/ Formatting Macros /]
+[template super[x]'''<superscript>'''[x]'''</superscript>''']
+[template sub[x]'''<subscript>'''[x]'''</subscript>''']
+
+[/ Quick Reference Templates /]
+[template Destructible[] [link
+ standards.concepts.utilities.destructible
+ [^Destructible]]]
+[template DefaultConstructible[] [link
+ standard.concepts.utilities.default_constructible
+ [^DefaultConstructible]]]
+[template CopyConstructible[] [link
+ standard.concepts.utilities.copy_constructible
+ [^CopyConstructible]]]
+[template Assignable[] [link
+ standard.concepts.utilities.assignable
+ [^Assignable]]]
+[template EqualityComparable[] [link
+ standard.concepts.utilities.equality_comparable
+ [^EqualityComparable]]]
+[template LessThanComparable[] [link
+ standard.concepts.utilities.less_than_comparable
+ [^LessThanComparable]]]
+
+[template Container[] [link
+ standard.concepts.containers.general_concepts.container
+ [^Container]]]
+[template ForwardContainer[] [link
+ standard.concepts.containers.general_concepts.forward_container
+ [^ForwardContainer]]]
+[template ReversibleContainer[] [link
+ standard.concepts.containers.general_concepts.reversible_container
+ [^ReversibleContainer]]]
+[template RandomAccessContainer[] [link
+ standard.concepts.containers.general_concepts.random_access_container
+ [^RandomAccessContainer]]]
+
+[template Iterator[] [link
+ standard.concepts.iterators.iterator
+ [^Iterator]]]
+[template InputIterator[] [link
+ standard.concepts.iterators.input_iterator
+ [^InputIterator]]]
+[template OutputIterator[] [link
+ standard.concepts.iterators.output_iterator
+ [^OutputIterator]]]
+[template ForwardIterator[] [link
+ standard.concepts.iterators.forward_iterator
+ [^ForwardIterator]]]
+[template BidirectionalIterator[] [link
+ standard.concepts.iterators.bidirectional_iterator
+ [^BidirectionalIterator]]]
+[template RandomAccessIterator[] [link
+ standard.concepts.iterators.random_access_iterator
+ [^RandomAccessIterator]]]
\ No newline at end of file


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk