diff --git a/doc/compiler_specifics.html b/doc/compiler_specifics.html index f5c3492..5fac2d7 100644 --- a/doc/compiler_specifics.html +++ b/doc/compiler_specifics.html @@ -263,7 +263,7 @@ by the compiler before doing any further type handling.
-Type hiding techniques can also be applied to composite_key intantiations,
+Type hiding techniques can also be applied to composite_key instantiations,
which often contribute a great deal to symbol name lengths.
multi_index_container. By a bidirectional map we mean
a container of (const FromType,const ToType) pairs
-such that no two elements exists with the same first
+such that no two elements exist with the same first
or second component (std::map only
guarantees uniqueness of the first component). Fast lookup is provided
for both keys. The program features a tiny Spanish-English
diff --git a/doc/performance.html b/doc/performance.html
index 64819e8..ead41ec 100644
--- a/doc/performance.html
+++ b/doc/performance.html
@@ -220,7 +220,7 @@ manual simulations.
The gain in space consumption of multi_index_container with
respect to its manual simulations is amenable to a very simple
theoretical analysis. For simplicity, we will ignore alignment
-issues (which in general play in favor of multi_index_container.)
+issues (which in general play in favor of multi_index_container).
@@ -285,7 +285,7 @@ Taking this fact into account, the former formula can be adjusted to:
where O is the number of ordered indices of the container, and w -is the system word size (typically 4 bytes on 32-bit architectures.) +is the system word size (typically 4 bytes on 32-bit architectures).
@@ -473,7 +473,7 @@ sequenced index.
The figures confirm that in this case multi_index_container nodes are the
-same size than those of its std::list counterpart.
+same size as those of its std::list counterpart.
multi_index_container outperforms, both in space and
time efficiency, equivalent data structures obtained from the manual
combination of STL containers. This improvement gets larger when the number
-of indices increase.
+of indices increases.
diff --git a/doc/reference/hash_indices.html b/doc/reference/hash_indices.html index d847205..3332bb9 100644 --- a/doc/reference/hash_indices.html +++ b/doc/reference/hash_indices.html @@ -199,7 +199,7 @@ together, with minor differences explicitly stated when they exist.
Except where noted or if the corresponding interface does not exist, hashed indices
(both unique and non-unique) satisfy the C++ requirements for unordered associative
-containers at [unord.req] (supporting unique and equivalent keys, respectively.)
+containers at [unord.req] (supporting unique and equivalent keys, respectively).
Iterators (including to the end of the index) and pointers and references to an element
remain valid during the lifetime of the associated container (which can change
upon swapping), or until the referred-to element is erased or extracted;
@@ -458,7 +458,7 @@ following types:
which determines the mechanism for extracting a key from Value,
must be a model of
Key Extractor from Value. Hash is a
-CopyConstructibleunary function object
+CopyConstructible unary function object
taking a single argument of type KeyFromValue::result_type and returning a
value of type std::size_t in the range
[0, std::numeric_limits<std::size_t>::max()).
@@ -802,7 +802,7 @@ the number of elements in [first,last).
position is a valid dereferenceable iterator of the index.
Effects: Assigns the value x to the element pointed
to by position into the multi_index_container to which
-the index belongs if, for the value x
+the index belongs if, for the value x,
*position) with equivalent key,*it' is the restored copy of *it; if itm.get<i>().end(n) for some n, then
it'==m'.get<i>().end(n) (where m is the original
multi_index_container, m' its restored copy
-and i is the ordinal of the index.)i is the ordinal of the index).it be a const_local_iterator
and the restored it' a local_iterator, or vice versa.
diff --git a/doc/reference/indices.html b/doc/reference/indices.html
index 6f5a066..6787ed4 100644
--- a/doc/reference/indices.html
+++ b/doc/reference/indices.html
@@ -81,7 +81,7 @@ appropriate interface of some index of the multi_index_container;
these operations, however, do have an impact on all other indices as
well: for instance, insertion through a given index may fail because
there exists another index which bans the operation in order to preserve
-its invariant (like uniqueness of elements.) This circumstance, rather
+its invariant (like uniqueness of elements). This circumstance, rather
than being an obstacle, yields much of the power of Boost.MultiIndex:
equivalent constructions based on manual composition of standard
containers would have to add a fair amount of code in order to
@@ -103,7 +103,7 @@ six primitives:
multi_index_container are not mutable.
+ordering), elements of a multi_index_container are not mutable.
To overcome this restriction, indices expose member functions
for replacement and modification which allow for the mutation of elements
in a controlled fashion. Immutability of elements does not significantly
@@ -120,8 +120,8 @@ These global operations are not directly exposed to the user, but rather
they are wrapped as appropriate by each index (for instance, ordered indices
provide a set-like suite of insertion member functions, whereas sequenced
and random access indices have push_back and push_front
-operations.) Boost.MultiIndex poses no particular conditions on
-the interface of indices, although each index provided satisfy the C++ requirements for
+operations). Boost.MultiIndex poses no particular conditions on
+the interface of indices, although each index provided satisfies the C++ requirements for
standard containers to the maximum extent possible within the conceptual framework
of the library.
@@ -312,7 +312,7 @@ elements, as described in the key extraction
reference.
-The following concept is used by the rearrange facilities of non key-based
+The following concept is used by the rearrange facilities of non-key-based
indices. Given an index i of type Index, a view
of i is any range [first,last)
where first and last are input iterators such that
diff --git a/doc/reference/key_extraction.html b/doc/reference/key_extraction.html
index 5be27cf..71f766f 100644
--- a/doc/reference/key_extraction.html
+++ b/doc/reference/key_extraction.html
@@ -776,7 +776,7 @@ lvalue reference to a non const-qualified type.
Requires:@@ -1233,7 +1233,7 @@ bool operator OP(ChainedPtris a chained pointer type toValue.
-Returns:PtrToFunction)(y), whereyis the +Returns:PtrToFunction(y), whereyis the object chained-pointed to byx.
Requires: The expressions given below are valid (for the particular -OPconsidered.)
+OPconsidered).
Returns:trueif and only if!(x==y)(OPis!=),
@@ -2078,7 +2078,7 @@ with respect tocomposite_key_result<CompositeKey>:provided that eachtuple<Q0,...,Qj>,
composite_key_result<composite_key<K0,...,Kj> >, with -Ki::result_type = Qifor alli = 0,...,j. +Ki::result_type = Qifor alli = 0,...,j,Qiis eitherTior aCompatible Key@@ -2097,9 +2097,9 @@ is lexicographical. Also, the following types arecomposite_key_comparewith respect tocomposite_key_result<CompositeKey>:-provided thattuple<Q0,...,Qk>,k <= n
+tuple<Q0,...,Qk>,k <= n,
composite_key_result<composite_key<K0,...,Kk> >, with -Ki::result_type = Qifor alli = 0,...,k. +Ki::result_type = Qifor alli = 0,...,k,@@ -2214,7 +2214,7 @@ and engenders undefined behavior otherwise. When passed two or more arguments, with:
KeyFromValuei=key<Keyi>- for alli = 0,...,n+ for alli = 0,...,n,Value=std::decay_t<Value0>⊗std::decay_t<Value1>⊗ ··· ⊗ diff --git a/doc/reference/multi_index_container.html b/doc/reference/multi_index_container.html index 9cf91da..e94170a 100644 --- a/doc/reference/multi_index_container.html +++ b/doc/reference/multi_index_container.html @@ -244,7 +244,7 @@ class. For convenience of use, all public methods and types of the first index specified are inherited bymulti_index_container. This also includes global operators and functions associated with the index (vg. comparison and -swap.) +swap).@@ -590,7 +590,7 @@ into@@ -532,7 +532,7 @@ scheme outlined in the- -
IndexSpecifierListspecifies the indices that themulti_index_containeris composed of. It must be a non-empty -MPL Forward Sequence(and, preferrably, +MPL Forward Sequence(and, preferably, anMPL Random Access Sequence) of index specifiers. For syntactic convenience, the @@ -738,7 +738,7 @@ multi_index_container(
EmplaceConstructibleintomulti_index_containerfrom*first.lastis reachable fromfirst.
-Effects: Constructs and emptymulti_index_containerusing the +Effects: Constructs an emptymulti_index_containerusing the specified argument list and allocator and fills it with the elements in the range [first,last). Insertion of each element may or may not succeed depending @@ -765,7 +765,7 @@ the number of elements in [first,last).
multi_index_container.
Effects: Constructs a copy ofx, copying its elements as well as its internal objects (those specified -inctor_args_listand the allocator.)
+inctor_args_listand the allocator).
Postconditions:*this==x. The order on every index of themulti_index_containeris preserved as well.
Complexity:O(x.size()*log(x.size()) + C(x.size())). @@ -777,7 +777,7 @@ of themulti_index_containeris preserved as well.
Effects: Constructs amulti_index_containerby transferring the elements ofxand copying its internal objects (those specified -inctor_args_listand the allocator.)
+inctor_args_listand the allocator).
Postconditions: Ifx==yjust before the movement,*this==y. The order on every index of themulti_index_containeris preserved as well.
@@ -883,7 +883,7 @@ of the types ofctor_args_listdo not throw.Requires:ValueisCopyInsertableintomulti_index_container.
-Effects: Replaces the elements themulti_index_container+Effects: Replaces the elements of themulti_index_containerwith copies of the elements oflist, inserted in the specified order. Insertion of each element may or may not succeed depending on the acceptance by all the indices of themulti_index_container.
@@ -965,7 +965,7 @@ typename nth_index<N>::type::iterator project(IteratorType it); Requires:0 <= N < I-1.IteratorTypebelongs toiterator_type_list.itis a valid iterator of some index of*this(i.e. does not refer to some -othermulti_index_container.)
+othermulti_index_container).
Effects: Returns annth_index<N>::type::iteratorequivalent toit.
Complexity: Constant.
@@ -995,7 +995,7 @@ typename index<Tag>::type::iterator project(IteratorType it);index<Tag>::typeis valid.IteratorTypebelongs toiterator_type_list.itis a valid iterator of some index of*this(i.e. does not refer to some -othermulti_index_container.)
+othermulti_index_container).
Effects: Returns anindex<Tag>::type::iteratorequivalent toit.
Complexity: Constant.
@@ -1011,7 +1011,7 @@ typename index<Tag>::type::const_iterator project(IteratorType it)const;const_iterator_type_list oriterator_type_list.itis a valid (constant or non-constant) iterator of some index of*this-(i.e. does not refer to some othermulti_index_container.)
+(i.e. does not refer to some othermulti_index_container).
Effects: Returns anindex<Tag>::type::const_iteratoriterator equivalent toit.
Complexity: Constant.
@@ -1053,7 +1053,7 @@ output archive (XML archive)ar.Requires:@@ -1063,7 +1063,7 @@ input archive (XML archive)Valueis serializable (XML-serializable). Additionally, -each of the indices ofmcan impose another requirements.
+each of the indices ofmcan impose other requirements.
Exception safety: Strong with respect tom. If an exception is thrown,armay be left in an inconsistent state.ar.Requires:diff --git a/doc/reference/ord_indices.html b/doc/reference/ord_indices.html index 6035fe6..24cd8c0 100644 --- a/doc/reference/ord_indices.html +++ b/doc/reference/ord_indices.html @@ -196,7 +196,7 @@ together, with minor differences explicitly stated when they exist. Except where noted or if the corresponding interface does not exist, ordered indices (both unique and non-unique) satisfy the C++ requirements for associative containers at [associative.reqmts] -(supporting unique and equivalent keys, respectively.) +(supporting unique and equivalent keys, respectively). Iterators (including to the end of the index) and pointers and references to an element remain valid during the lifetime of the associated container (which can change upon swapping), or until the referred-to element is erased or extracted; @@ -1324,7 +1324,7 @@ Operation: loading of anValueis serializable (XML-serializable). Additionally, -each of the indices ofm'can impose another requirements.
+each of the indices ofm'can impose other requirements.
Exception safety: Basic. If an exception is thrown,armay be left in an inconsistent state.iteratororconst_iteratorthen*it'is the restored copy of*it, otherwiseit'==end().
Note: It is allowed thatitbe aconst_iterator-and the restoredit'aniterator, or viceversa. +and the restoredit'aniterator, or vice versa.
diff --git a/doc/reference/rnd_indices.html b/doc/reference/rnd_indices.html index 5da892b..890678a 100644 --- a/doc/reference/rnd_indices.html +++ b/doc/reference/rnd_indices.html @@ -178,7 +178,7 @@ plus the requirements forstd::listspecific list operations at havedatamember functions.- The complexity of some operations, notably insertion and deletion, differ +
- The complexities of some operations, notably insertion and deletion, differ from those of
std::vector.- Unlike as in
std::vector, insertions into a random access index @@ -439,7 +439,7 @@ of the complexity formulas:(
shlandrelstand for shift left and -relocate, respectively.) +relocate, respectively).Instantiation types
@@ -550,7 +550,7 @@ const_iterator iterator_to(const value_type& x)const;size()<c, back insertions happen in constant time (the general case as described byi(n)is amortized -constant time.)
+constant time).
Note: Validity of iterators and references to elements is preserved in all insertions, regardless of the capacity status.multi_index_container.
elements (first version) or copies ofx(second version) at the end of the index. Ifn<size(), erases the lastsize()-nelements.
Note: If an expansion is requested, the size of the index is not guaranteed -to benafter this operation (other indices may ban insertions.) +to benafter this operation (other indices may ban insertions).Modifiers
@@ -1223,7 +1223,7 @@ Operation: loading of aniteratororconst_iteratorthen*it'is the restored copy of*it, otherwiseit'==end().
Note: It is allowed thatitbe aconst_iterator-and the restoredit'aniterator, or viceversa. +and the restoredit'aniterator, or vice versa.
multi_index_container.x (second version) at the end of
the index. If n<size(), erases the last size()-n elements.n after this operation (other indices may ban insertions.)
+to be n after this operation (other indices may ban insertions).
iterator or const_iterator
then *it' is the restored copy of *it, otherwise
it'==end().it be a const_iterator
-and the restored it' an iterator, or viceversa.
+and the restored it' an iterator, or vice versa.
test_capacity.cppempty, size, resize
- (non key-based indices) and reserve/capacity
+ (non-key-based indices) and reserve/capacity
(random access indices only).test_copy_assignment.cppoperator =, insertion,
- (non key-based indices only) assign .
+ (non key-based indices only) assign.
test_hash_ops.cpp
Boost.MultiIndex features ordered indices, which
sort the elements according to a particular key, and are designed to help programmers
-in need of sequences of elements for which more than one sorting criteria are
+in need of sequences of elements for which more than one sorting criterion is
relevant. We do so by defining a multi_index_container
instantiation composed of several ordered indices: each index, viewed in isolation,
behaves much as an ordered std::set (or std::multiset), whilst
@@ -268,7 +268,7 @@ does not show any advantage. The code for inserting the text into the container
does not change as sequenced indices provide an interface similar to that of
std::list (no explicit access to this index through
get<0>() is needed as multi_index_container inherits the
-functionality of index #0.) But the specification of an additional ordered index
+functionality of index #0). But the specification of an additional ordered index
allows us to implement occurrences and delete_word
in a much more efficient manner:
employee_set::nth_index<1>::type is the type of
index #1,employee_set::index<name>::type is the type of the index
- tagged with name (the same index #1 in this case.)name (the same index #1 in this case).
get(), on the other hand, is overloaded to serve both styles of access:
@@ -453,7 +453,7 @@ in the previous example can be rewritten to hold two different tags
Each index of a multi_index_container uses its own
-iterator types, which are different from those of another indices. As is
+iterator types, which are different from those of other indices. As is
the rule with STL containers, these iterators are defined as nested
types of the index:
std::sets do and
provide a similar interface. There are unique and non-unique
variants: the former do not allow for duplicates, while the latter permit
- them (like std::multiset.)std::multiset).
employee objects:
an alternative comparison predicate is passed as well. In general, lookup operations
of ordered indices are overloaded to accept
compatible sorting
-criteria. The somewhat cumbersone definition of compatibility in this context
+criteria. The somewhat cumbersome definition of compatibility in this context
is given in the reference, but roughly speaking we say that a comparison predicate
C1 is compatible with C2 if any sequence sorted by
C2 is also sorted with respect to C1.
@@ -801,7 +801,7 @@ The following shows a more interesting use of compatible predicates:
Range searching, i.e. the lookup of all elements in a given interval, is a very
frequent operation for which standard lower_bound and
upper_bound can be resorted to, though in a cumbersome manner.
-For instance, the following code retrieves the elements of an
+For instance, the following code retrieves the elements of a
multi_index_container<double> in the interval [100,200]:
@@ -1229,7 +1229,7 @@ Appropriate instantiations of multi_index_container can in fact sim
std::set, std::multiset and (with more limitations)
std::list, as shown in the
techniques
-section. These simulations are as nearly as efficient as the original STL
+section. These simulations are nearly as efficient as the original STL
containers; consult the reference for further
information on complexity guarantees and the
performance section for practical measurements of
diff --git a/doc/tutorial/debug.html b/doc/tutorial/debug.html
index ce86655..7cfb231 100644
--- a/doc/tutorial/debug.html
+++ b/doc/tutorial/debug.html
@@ -162,7 +162,7 @@ asserting:
-Other possibilites, like outputting to a log or firing some kind of alert, are +Other possibilities, like outputting to a log or firing some kind of alert, are also implementable.
diff --git a/doc/tutorial/index.html b/doc/tutorial/index.html index b70ea35..16cf25d 100644 --- a/doc/tutorial/index.html +++ b/doc/tutorial/index.html @@ -101,7 +101,7 @@ indices are met.
All the public types of Boost.MultiIndex reside in namespace ::boost::multi_index.
-Additionaly, the main class template multi_index_container and global functions
+Additionally, the main class template multi_index_container and global functions
get and project are lifted to namespace ::boost
by means of using declarations. For brevity of exposition, the fragments
of code in the documentation are written as if the following declarations were in effect:
diff --git a/doc/tutorial/indices.html b/doc/tutorial/indices.html
index dee316e..987a402 100644
--- a/doc/tutorial/indices.html
+++ b/doc/tutorial/indices.html
@@ -757,7 +757,7 @@ specifically designed for handling the elements of a container,
and not only benefit from the iterator orientation of container interfaces,
but are also capable of exposing many more programming bugs than raw pointers, both
at compile and run time. iterator_to is thus meant to be used
-in scenarios where access via iterators is not suitable or desireable:
+in scenarios where access via iterators is not suitable or desirable:
-Academic movitations aside, there is a practical interest in emulating standard
+Academic motivations aside, there is a practical interest in emulating standard
associative containers by means of multi_index_container, namely to take
advantage of extended functionalities provided by multi_index_container for
lookup, range querying and updating.