Compare commits

...

73 Commits

Author SHA1 Message Date
782e67f4ac Create branches/filesystem-v3 for v2 removal
[SVN r77385]
2012-03-18 20:54:17 +00:00
1cb6a99c80 eliminated unit_test_framework
[SVN r74719]
2011-10-05 09:13:05 +00:00
c4bd4bf4ce Remove tabs.
[SVN r72190]
2011-05-26 18:23:57 +00:00
41b76f8f5c [boost][range] - Ticket 5236 - Improved test coverage to ensure that the result for a random access strided range is consistent with that of a bidirectional strided range.
[SVN r72108]
2011-05-22 22:15:14 +00:00
846f11a96c [boost][range] - Ticket 5236 - Strided reversing past begin issue resolved.
[SVN r72107]
2011-05-22 22:06:30 +00:00
8810c4c4aa [boost][range] - Ticket 5547 - Boost.Range join() ambiguous with Boost.Algorithm join() function. Put the Boost.Range join function into the boost::range namespace and brought out with 'using'
[SVN r72106]
2011-05-22 21:19:53 +00:00
91428c2110 [boost][range] - Ticket 5530 - adaptor example fails to compile. This change adds tests for all of the .cpp example files for the range adaptors, and fixes a few small issues with the examples shown by the new tests.
[SVN r72104]
2011-05-22 21:03:01 +00:00
44c26a3356 [boost][range] - Ticket 5486 - Removal of unnecessary variables from adjacent_filtered_range. This removes the requirement for the predicate to be default constructible.
[SVN r72102]
2011-05-22 20:33:06 +00:00
b06fca8378 [boost][range] - Ticket 5556 - is_sorted namespace issue under GCC 4.5
[SVN r72101]
2011-05-22 20:20:20 +00:00
3b3889b70f [boost][range] - Ticket 5485 - doubly defined BOOST_DEFINE_RANGE_ADAPTOR_1 macro.
[SVN r72098]
2011-05-22 20:01:12 +00:00
5ed6116490 [boost][range] - ticket 5544 - fix for termination of irange - done properly for negative step sizes.
[SVN r72097]
2011-05-22 19:59:59 +00:00
df1a3a334f [boost][range] - ticket 5544 - fix for termination of irange.
[SVN r72070]
2011-05-22 11:16:53 +00:00
126e6861d7 [boost][range] - Resolved Trace 5162 - boost::iterator_range<T*> is unsafe.
[SVN r70852]
2011-04-02 13:05:26 +00:00
d490a84c8d [boost][range] - Improved the work-around for VC10 for_each implementation. Corrected a missing newline at the end of the file.
[SVN r70850]
2011-04-02 10:14:51 +00:00
10af4fc1e0 [boost][range] - Improve the forwarding of the functor, and provide a work-around for the breaking changes in VC10 for_each.
[SVN r70690]
2011-03-29 10:27:00 +00:00
f8bb8aafbf [range] - Improved default Reference type deduction for the join_iterator as implemented by aschoedl in Trac issue 5061.
[SVN r70041]
2011-03-16 23:55:25 +00:00
c6a6a46db4 [range] - Fix for the demotion of traversal tags supplied by aschoedl. This is mentioned in Trac issue 5061, but has also been reported independently by a few users.
[SVN r70040]
2011-03-16 23:47:02 +00:00
cc8a1413cb [range] - Qualify the lookup of the make_transform_iterator function to protect against ADL. This was reported as part of Trac issue 5061.
[SVN r70039]
2011-03-16 23:41:12 +00:00
1131136d4a [range] - Fix for Trac issue 5313 - Typos in boost/range/detail/detail_str.hpp
[SVN r70038]
2011-03-16 23:37:03 +00:00
3cd6a7277f [range] Added <=, ==, >, >=, != operators to iterator_range
[SVN r70037]
2011-03-16 23:33:57 +00:00
19a2090ef8 [range] - Fix for Trac issue 5295 - boost/range/sub_range.hpp cannot be included by itself
[SVN r70036]
2011-03-16 23:31:59 +00:00
67f457ade1 [range] Fix for Trac issue 5179 - Extra ";" in boost range file
[SVN r70035]
2011-03-16 23:29:29 +00:00
7315e2c14e [range] resolved trac issue 5295 - sub_range.hpp was missing an include of concepts.hpp
[SVN r70034]
2011-03-16 23:20:12 +00:00
96c78123f0 [boost][range] - Fixed erroneous change by 'Wash' the size() function is intended to be for Random Access Ranges only to be in keeping with the other Boost.Range size() functions.
[SVN r68177]
2011-01-16 00:05:12 +00:00
868858b844 Fixed ambiguity issues when compiling with C++0x support enabled.
[SVN r68155]
2011-01-14 17:37:59 +00:00
367582d0f4 Removed the use of __gnu_cxx::is_sorted from Boost.Graph as it's lolnonportable,
implemented a version of the algorithm as a replacement,



[SVN r68144]
2011-01-14 03:02:47 +00:00
2da424d940 [boost][range] - Improved the tests by implementing outside of the boost namespace to better simulate real world usage.
[SVN r67602]
2011-01-03 01:33:04 +00:00
a5d94bbe21 [boost][range] - Make the type_erased adaptor test compatible with more compilers and reduce the time of test compilation/execution to avoid timeouts on the Intel compilers.
[SVN r67601]
2011-01-03 00:38:52 +00:00
716cf7795e [boost][range] - Fixed defect where BOOST_TEST_MESSAGE was being undefined as a side-effect by the boost/range/detail/any_iterator_buffer.hpp header file
[SVN r67542]
2011-01-01 16:51:31 +00:00
55fd3ca5b2 [boost][range] - Updated begin/end to be protected against accidental ADL to improve compatibility with C++0x. Added any_range which adds type erasure support. Added a type_erased adaptor to utilise the any_range. Implemented the any_iterator using a small buffer optimization to avoid heap usage.
[SVN r67541]
2011-01-01 16:46:32 +00:00
c506d2537f [boost][range] - Trac item 4226 - Implemented a safe_bool utility class that is intended to be refactored into a core area. Integrated this into iterator_range.
[SVN r67463]
2010-12-26 23:14:08 +00:00
efb7b50a8a [boost][range] - Improved the implementation of strided range to eliminate requirements for boost::size(rng) to be a valid expression. Each traversal category of strided_iterator is now individually implemented.
[SVN r67461]
2010-12-26 20:33:33 +00:00
fd63de33e9 [boost][range] - Correctly attribute the test case kindly contributed by Michel Morin.
[SVN r67453]
2010-12-26 14:15:23 +00:00
014fdb8ace [boost][range] - Corrected yesterdays erroneous modifications to the strided adaptor.
[SVN r67445]
2010-12-24 15:00:08 +00:00
9cf925c079 [boost][range] - Added has_range_iterator and has_range_const_iterator. Trac ticket 4296.
[SVN r67433]
2010-12-23 18:10:09 +00:00
4fc942f45e [boost][range] - Resolved Trac ticket 4355 - Concepts did not check that iterators must be dereferencable.
[SVN r67430]
2010-12-23 11:56:27 +00:00
48fc316156 [boost][range] - Added documentation for the join() function. This is to resolve Trac ticket 4740.
[SVN r67428]
2010-12-23 10:56:23 +00:00
c66fb8e807 [boost][range] - manually split the implementation calls to search_n _impl and search_n_pred_impl due to a function overload resolution issue with VC10.
[SVN r67426]
2010-12-23 09:59:53 +00:00
3adf4d2869 [boost][range] - Resolution of Trac item 4905 - Implementation of boost::range::map_keys should use boost::range_reference
[SVN r67423]
2010-12-23 00:56:04 +00:00
de24df7962 [boost][range] - Fixed the search_n predicate version and resolve Trac ticket 4776
[SVN r67421]
2010-12-23 00:12:28 +00:00
dfa0764d53 [boost][range] - Resolution of Trac ticket 4355. Made the naming of the returned types from range adaptors consistent and documented.
[SVN r67420]
2010-12-22 23:42:02 +00:00
d68174a51d [boost][range] - Update to relax preconditions for the strided adaptor, and numerous fixes to inspection report issues.
[SVN r67419]
2010-12-22 22:36:43 +00:00
612cec17bb [boost][range] - Update to relax preconditions for the strided adaptor, and numerous fixes to inspection report issues.
[SVN r67418]
2010-12-22 22:31:33 +00:00
1ff26bc99b boost/range/iterator_range_core.hpp: fixing bug introduced with rev. 67153 (major breakage)
[SVN r67169]
2010-12-11 14:30:49 +00:00
4b96ce34aa Fix order of includes for Spirit scheme example. Changed iterator_range.size()
to use std::distance instead of subtracting iterators, this allows it to work
with iterators other than random access. Added more utree docs to Spirit.



[SVN r67153]
2010-12-10 20:04:30 +00:00
9e48730a0e Fix some links in the range documentation.
[SVN r64279]
2010-07-22 23:28:41 +00:00
ce9d9b4726 Remove old range documentation files.
[SVN r64167]
2010-07-19 20:14:35 +00:00
22c4ab4a06 Boost.Range fixes for Tickets: 4131, 4136, 4398, 4388. Plus updated history in the documentation.
[SVN r64111]
2010-07-17 19:44:31 +00:00
a06f11589f Removed invalid comparison of invalidated iterators in the Boost.Range partition test case.
[SVN r64088]
2010-07-17 12:25:57 +00:00
109bf20484 [range] - corrected defected test for the partition algorithm.
[SVN r64001]
2010-07-13 22:28:37 +00:00
183e449a31 [range] disambiguate const / non-const overloads for Intel compilers and older GCC.
[SVN r63998]
2010-07-13 20:31:40 +00:00
7c3b66d520 [range] experimental commit using disable_if in an attempt to resolve the ambiguity warnings on some compilers.
[SVN r63938]
2010-07-12 22:45:30 +00:00
334bc28136 avoid name clash with Boost.Algorithm by renaming replace_range to replaced_range
[SVN r63936]
2010-07-12 22:02:46 +00:00
40714ccc7e [range] - fix erroneous change to uniqued test case.
[SVN r63935]
2010-07-12 21:52:28 +00:00
5bb66037d3 [boost][range] - Improved handling of temporary ranges in range algorithms.
[SVN r63904]
2010-07-12 00:14:07 +00:00
74a01a4487 [boost][range] - Improved handling of temporary ranges in range algorithms.
[SVN r63903]
2010-07-12 00:12:49 +00:00
ef000176d8 [boost][range] - Improved handling of temporary ranges in range algorithms.
[SVN r63902]
2010-07-12 00:08:41 +00:00
db345d4e8e Update various libraries' documentation build.
Mostly to use the images and css files under doc/src instead of
doc/html, usually be deleting the settings in order to use the defaults.
Also add 'boost.root' to some builds in order to fix links which rely on
it.

[SVN r63146]
2010-06-20 18:00:48 +00:00
aebb16feef Boost.Range sliced adaptor is now compatible with VC10 even with using namespace boost::adaptors.
[SVN r61923]
2010-05-12 01:34:50 +00:00
5b1d0544e2 Const-qualified objects of class type require the class to have a
user-declared default constructor.


[SVN r61758]
2010-05-04 15:26:09 +00:00
c9802507ab Boost.Range - modified join and irange to return public range types.
[SVN r61690]
2010-04-29 22:03:58 +00:00
3ef3363c2d Boost.Range documentation iteration.
[SVN r61662]
2010-04-28 19:27:44 +00:00
7e065ca313 Boost.Range corrected dodgy link in the Uniqued adaptor documentation.
[SVN r61661]
2010-04-28 19:16:28 +00:00
1d5fb47238 Boost.Range documentation iteration.
[SVN r61660]
2010-04-28 19:07:47 +00:00
83c89f3038 Boost.Range documentation: corrected the Returned Range Category for the uniqued adaptor
[SVN r61654]
2010-04-28 18:09:41 +00:00
e3e1fc43d3 Boost.Range documentation iteration. Primarily this is the inclusion of Range Return Categories for every Range Adaptor page.
[SVN r61653]
2010-04-28 18:03:26 +00:00
5364ea2cad Boost.Range commit fix for the mismatch documentation - thanks to vincente botet for spotting this.
[SVN r61651]
2010-04-28 16:52:24 +00:00
ec58d739eb Boost.Range documentation iteration.
[SVN r61650]
2010-04-28 16:29:11 +00:00
925b3ad355 Boost.Range updated unit tests.
[SVN r61648]
2010-04-28 16:11:40 +00:00
abc18532e4 Boost.Range documentation update iteration.
[SVN r61647]
2010-04-28 16:09:03 +00:00
adc4b5db3b Boost.Range brought back some of the const overloads that were over-zealously removed.
[SVN r61495]
2010-04-22 22:43:57 +00:00
1dea353fa3 Boost.Range revert accidental check-in of lambda test. It kinda breaks most compilers - doh.
[SVN r61452]
2010-04-21 07:37:25 +00:00
3e2d5cb786 Boost.MultiArray disambiguated calls to equal functions in the unit tests. These became ambiguous due to changes in Boost.Range.
[SVN r61441]
2010-04-20 21:56:33 +00:00
568 changed files with 23817 additions and 11338 deletions

View File

@ -19,8 +19,6 @@ boostbook quickbook
boost_range.qbk
:
<xsl:param>boost.root=../../../..
<xsl:param>boost.libraries=../../../libraries.htm
<xsl:param>html.stylesheet=../../../../doc/html/boostbook.css
<xsl:param>chunk.section.depth=4
<xsl:param>chunk.first.sections=1
<xsl:param>toc.section.depth=3

View File

@ -33,36 +33,132 @@
[def __bidirectional_range__ [link range.concepts.bidirectional_range Bidirectional Range]]
[def __random_access_range__ [link range.concepts.random_access_range Random Access Range]]
[def __iterator_range__ [link range.utilities.iterator_range `iterator_range`]]
[def __sub_range__ [link range.utilities.sub_range `sub_range`]]
[def __iterator_range__ [link range.reference.utilities.iterator_range `iterator_range`]]
[def __sub_range__ [link range.reference.utilities.sub_range `sub_range`]]
[def __minimal_interface__ [link range.reference.extending minimal interface]]
[def __range_result_iterator__ [link range.reference.semantics.metafunctions `range_result_iterator`]]
[def __range_result_iterator__ [link range.reference.concept_implementation.semantics.metafunctions `range_result_iterator`]]
[def __extending_for_udts__ [link range.reference.extending Extending the library for UDTs]]
[def __implementation_of_metafunctions__ [link range.reference.semantics.metafunctions Implementation of metafunctions]]
[def __implementation_of_functions__ [link range.reference.semantics.functions Implementation of functions]]
[def __implementation_of_metafunctions__ [link range.reference.concept_implementation.semantics.metafunctions Implementation of metafunctions]]
[def __implementation_of_functions__ [link range.reference.concept_implementation.semantics.functions Implementation of functions]]
[def __range_value__ [link range.reference.semantics.metafunctions `range_value`]]
[def __range_iterator__ [link range.reference.semantics.metafunctions `range_iterator`]]
[def __range_difference__ [link range.reference.semantics.metafunctions `range_difference`]]
[def __range_pointer__ [link range.reference.semantics.metafunctions `range_pointer`]]
[def __range_category__ [link range.reference.semantics.metafunctions `range_category`]]
[def __range_reverse_iterator__ [link range.reference.semantics.metafunctions `range_reverse_iterator`]]
[def __begin__ [link range.reference.semantics.functions `begin`]]
[def __const_begin__ [link range.reference.semantics.functions `const_begin`]]
[def __end__ [link range.reference.semantics.functions `end`]]
[def __const_end__ [link range.reference.semantics.functions `const_end`]]
[def __empty__ [link range.reference.semantics.functions `empty`]]
[def __distance__ [link range.reference.semantics.functions `distance`]]
[def __size__ [link range.reference.semantics.functions `size`]]
[def __rbegin__ [link range.reference.semantics.functions `rbegin`]]
[def __const_rbegin__ [link range.reference.semantics.functions `const_rbegin`]]
[def __rend__ [link range.reference.semantics.functions `rend`]]
[def __const_rend__ [link range.reference.semantics.functions `const_rend`]]
[def __as_array__ [link range.reference.semantics.functions `as_array`]]
[def __as_literal__ [link range.reference.semantics.functions `as_literal`]]
[def __range_value__ [link range.reference.concept_implementation.semantics.metafunctions `range_value`]]
[def __range_iterator__ [link range.reference.concept_implementation.semantics.metafunctions `range_iterator`]]
[def __range_difference__ [link range.reference.concept_implementation.semantics.metafunctions `range_difference`]]
[def __range_pointer__ [link range.reference.concept_implementation.semantics.metafunctions `range_pointer`]]
[def __range_category__ [link range.reference.concept_implementation.semantics.metafunctions `range_category`]]
[def __range_reverse_iterator__ [link range.reference.concept_implementation.semantics.metafunctions `range_reverse_iterator`]]
[def __begin__ [link range.reference.concept_implementation.semantics.functions `begin`]]
[def __const_begin__ [link range.reference.concept_implementation.semantics.functions `const_begin`]]
[def __end__ [link range.reference.concept_implementation.semantics.functions `end`]]
[def __const_end__ [link range.reference.concept_implementation.semantics.functions `const_end`]]
[def __empty__ [link range.reference.concept_implementation.semantics.functions `empty`]]
[def __distance__ [link range.reference.concept_implementation.semantics.functions `distance`]]
[def __size__ [link range.reference.concept_implementation.semantics.functions `size`]]
[def __rbegin__ [link range.reference.concept_implementation.semantics.functions `rbegin`]]
[def __const_rbegin__ [link range.reference.concept_implementation.semantics.functions `const_rbegin`]]
[def __rend__ [link range.reference.concept_implementation.semantics.functions `rend`]]
[def __const_rend__ [link range.reference.concept_implementation.semantics.functions `const_rend`]]
[def __as_array__ [link range.reference.concept_implementation.semantics.functions `as_array`]]
[def __as_literal__ [link range.reference.concept_implementation.semantics.functions `as_literal`]]
[def __counting_range__ [link range.reference.ranges.counting_range `counting_range`]]
[def __irange__ [link range.reference.ranges.irange `irange`]]
[def __istream_range__ [link range.reference.ranges.istream_range `istream_range`]]
[def __join__ [link range.reference.utilities.join `join`]]
[def __range_adaptors__ [link range.reference.adaptors Range adaptors]]
[def __range_algorithms__ [link range.reference.algorithms Range algorithms]]
[def __range_adaptors__ [link range.reference.adaptors Range adaptors]]
[def __range_adaptors_adjacent_filtered__ [link range.reference.adaptors.reference.adjacent_filtered adjacent_filtered]]
[def __range_adaptors_copied__ [link range.reference.adaptors.reference.copied copied]]
[def __range_adaptors_filtered__ [link range.reference.adaptors.reference.filtered filtered]]
[def __range_adaptors_indexed__ [link range.reference.adaptors.reference.indexed indexed]]
[def __range_adaptors_indirected__ [link range.reference.adaptors.reference.indirected indirected]]
[def __range_adaptors_map_keys__ [link range.reference.adaptors.reference.map_keys map_keys]]
[def __range_adaptors_map_values__ [link range.reference.adaptors.reference.map_values map_values]]
[def __range_adaptors_replaced__ [link range.reference.adaptors.reference.replaced replaced]]
[def __range_adaptors_replaced_if__ [link range.reference.adaptors.reference.replaced_if replaced_if]]
[def __range_adaptors_reversed__ [link range.reference.adaptors.reference.reversed reversed]]
[def __range_adaptors_sliced__ [link range.reference.adaptors.reference.sliced sliced]]
[def __range_adaptors_strided__ [link range.reference.adaptors.reference.strided strided]]
[def __range_adaptors_type_erased__ [link range.reference.adaptors.reference.type_erased type_erased]]
[def __range_adaptors_tokenized__ [link range.reference.adaptors.reference.tokenized tokenized]]
[def __range_adaptors_transformed__ [link range.reference.adaptors.reference.transformed transformed]]
[def __range_adaptors_uniqued__ [link range.reference.adaptors.reference.uniqued uniqued]]
[def __range_algorithms__ [link range.reference.algorithms Range algorithms]]
[def __range_algorithms_adjacent_find__ [link range.reference.algorithms.non_mutating.adjacent_find adjacent_find]]
[def __range_algorithms_binary_search__ [link range.reference.algorithms.non_mutating.binary_search binary_search]]
[def __range_algorithms_count__ [link range.reference.algorithms.non_mutating.count count]]
[def __range_algorithms_count_if__ [link range.reference.algorithms.non_mutating.count_if count_if]]
[def __range_algorithms_equal__ [link range.reference.algorithms.non_mutating.equal equal]]
[def __range_algorithms_equal_range__ [link range.reference.algorithms.non_mutating.equal_range equal_range]]
[def __range_algorithms_for_each__ [link range.reference.algorithms.non_mutating.for_each for_each]]
[def __range_algorithms_find__ [link range.reference.algorithms.non_mutating.find find]]
[def __range_algorithms_find_end__ [link range.reference.algorithms.non_mutating.find_end find_end]]
[def __range_algorithms_find_first_of__ [link range.reference.algorithms.non_mutating.find_first_of find_first_of]]
[def __range_algorithms_find_if__ [link range.reference.algorithms.non_mutating.find_if find_if]]
[def __range_algorithms_lexicographical_compare__ [link range.reference.algorithms.non_mutating.lexicographical_compare lexicographical_compare]]
[def __range_algorithms_lower_bound__ [link range.reference.algorithms.non_mutating.lower_bound lower_bound]]
[def __range_algorithms_max_element__ [link range.reference.algorithms.non_mutating.max_element max_element]]
[def __range_algorithms_min_element__ [link range.reference.algorithms.non_mutating.min_element min_element]]
[def __range_algorithms_mismatch__ [link range.reference.algorithms.non_mutating.mismatch mismatch]]
[def __range_algorithms_search__ [link range.reference.algorithms.non_mutating.search search]]
[def __range_algorithms_search_n__ [link range.reference.algorithms.non_mutating.search_n search_n]]
[def __range_algorithms_upper_bound__ [link range.reference.algorithms.non_mutating.upper_bound upper_bound]]
[def __range_algorithms_copy__ [link range.reference.algorithms.mutating.copy copy]]
[def __range_algorithms_copy_backward__ [link range.reference.algorithms.mutating.copy_backward copy_backward]]
[def __range_algorithms_fill__ [link range.reference.algorithms.mutating.fill fill]]
[def __range_algorithms_fill_n__ [link range.reference.algorithms.mutating.fill_n fill_n]]
[def __range_algorithms_generate__ [link range.reference.algorithms.mutating.generate generate]]
[def __range_algorithms_inplace_merge__ [link range.reference.algorithms.mutating.inplace_merge inplace_merge]]
[def __range_algorithms_merge__ [link range.reference.algorithms.mutating.merge merge]]
[def __range_algorithms_nth_element__ [link range.reference.algorithms.mutating.nth_element nth_element]]
[def __range_algorithms_partial_sort__ [link range.reference.algorithms.mutating.partial_sort partial_sort]]
[def __range_algorithms_partition__ [link range.reference.algorithms.mutating.partition partition]]
[def __range_algorithms_random_shuffle__ [link range.reference.algorithms.mutating.random_shuffle random_shuffle]]
[def __range_algorithms_remove__ [link range.reference.algorithms.mutating.remove remove]]
[def __range_algorithms_remove_copy__ [link range.reference.algorithms.mutating.remove_copy remove_copy]]
[def __range_algorithms_remove_copy_if__ [link range.reference.algorithms.mutating.remove_copy_if remove_copy_if]]
[def __range_algorithms_remove_if__ [link range.reference.algorithms.mutating.remove_if remove_if]]
[def __range_algorithms_replace__ [link range.reference.algorithms.mutating.replace replace]]
[def __range_algorithms_replace_copy__ [link range.reference.algorithms.mutating.replace_copy replace_copy]]
[def __range_algorithms_replace_copy_if__ [link range.reference.algorithms.mutating.replace_copy_if replace_copy_if]]
[def __range_algorithms_replace_if__ [link range.reference.algorithms.mutating.replace_if replace_if]]
[def __range_algorithms_reverse__ [link range.reference.algorithms.mutating.reverse reverse]]
[def __range_algorithms_reverse_copy__ [link range.reference.algorithms.mutating.reverse_copy reverse_copy]]
[def __range_algorithms_rotate__ [link range.reference.algorithms.mutating.rotate rotate]]
[def __range_algorithms_rotate_copy__ [link range.reference.algorithms.mutating.rotate_copy rotate_copy]]
[def __range_algorithms_sort__ [link range.reference.algorithms.mutating.sort sort]]
[def __range_algorithms_stable_partition__ [link range.reference.algorithms.mutating.stable_partition stable_partition]]
[def __range_algorithms_stable_sort__ [link range.reference.algorithms.mutating.stable_sort stable_sort]]
[def __range_algorithms_swap_ranges__ [link range.reference.algorithms.mutating.swap_ranges swap_ranges]]
[def __range_algorithms_transform__ [link range.reference.algorithms.mutating.transform transform]]
[def __range_algorithms_unique__ [link range.reference.algorithms.mutating.unique unique]]
[def __range_algorithms_unique_copy__ [link range.reference.algorithms.mutating.unique_copy unique_copy]]
[def __range_algorithms_includes__ [link range.reference.algorithms.set.includes includes]]
[def __range_algorithms_set_union__ [link range.reference.algorithms.set.set_union set_union]]
[def __range_algorithms_set_intersection__ [link range.reference.algorithms.set.set_intersection set_intersection]]
[def __range_algorithms_set_difference__ [link range.reference.algorithms.set.set_difference set_difference]]
[def __range_algorithms_set_symmetric_difference__ [link range.reference.algorithms.set.set_symmetric_difference set_symmetric_difference]]
[def __range_algorithms_push_heap__ [link range.reference.algorithms.heap.push_heap push_heap]]
[def __range_algorithms_pop_heap__ [link range.reference.algorithms.heap.pop_heap pop_heap]]
[def __range_algorithms_make_heap__ [link range.reference.algorithms.heap.make_heap make_heap]]
[def __range_algorithms_sort_heap__ [link range.reference.algorithms.heap.sort_heap sort_heap]]
[def __range_algorithms_next_permutation__ [link range.reference.algorithms.permutation.next_permutation next_permutation]]
[def __range_algorithms_prev_permutation__ [link range.reference.algorithms.permutation.prev_permutation prev_permutation]]
[def __range_algorithm_ext_copy_n__ [link range.reference.algorithms.new.copy_n copy_n]]
[def __range_algorithm_ext_erase__ [link range.reference.algorithms.new.erase erase]]
[def __range_algorithm_ext_for_each__ [link range.reference.algorithms.new.for_each for_each]]
[def __range_algorithm_ext_insert__ [link range.reference.algorithms.new.insert insert]]
[def __range_algorithm_ext_iota__ [link range.reference.algorithms.new.iota iota]]
[def __range_algorithm_ext_is_sorted__ [link range.reference.algorithms.new.is_sorted is_sorted]]
[def __range_algorithm_ext_overwrite__ [link range.reference.algorithms.new.overwrite overwrite]]
[def __range_algorithm_ext_push_back__ [link range.reference.algorithms.new.push_back push_back]]
[def __range_algorithm_ext_push_front__ [link range.reference.algorithms.new.push_front push_front]]
[def __single_pass_iterator__ [@boost:/libs/iterator/doc/new-iter-concepts.html#singls-pass-iterators-lib-single-pass-iterators Single Pass Iterator]]
[def __forward_traversal_iterator__ [@boost:/libs/iterator/doc/new-iter-concepts.html#forward-traversal-iterators-lib-forward-traversal-iterators Forward Traversal Iterator]]
@ -79,12 +175,17 @@
[def __sgi_inner_product__ [@http://www.sgi.com/tech/stl/inner_product.html inner_product]]
[def __sgi_partial_sum__ [@http://www.sgi.com/tech/stl/partial_sum.html partial_sum]]
[def __type_erasure_article__ [@http://www.artima.com/cppsource/type_erasure.html type erasure article]]
Boost.Range is a collection of concepts and utilities, range-based algorithms,
as well as range adaptors that allow for efficient and expressive code.
Using Boost.Range inplace of the standard library alternatives results in more
readable code and in many cases greater efficiency.
Boost.Range is a collection of concepts and utilities that are particularly useful for specifying and implementing generic algorithms.
[include introduction.qbk]
[include concepts.qbk]
[include reference.qbk]
[include utilities.qbk]
[include style.qbk]
[include headers.qbk]
[include examples.qbk]

View File

@ -1,3 +1,8 @@
[/
Copyright 2010 Neil Groves
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)
/]
[section:concepts Range Concepts]
[section Overview]
@ -11,9 +16,9 @@ The motivation for the Range concept is that there are many useful Container-lik
Because of the second requirement, a Range object must be passed by (const or non-const) reference in generic code.
The operations that can be performed on a Range is dependent on the [@../../iterator/doc/new-iter-concepts.html#iterator-traversal-concepts-lib-iterator-traversal traversal category] of the underlying iterator type. Therefore the range concepts are named to reflect which traversal category its iterators support. See also terminology and style guidelines. for more information about naming of ranges.
The operations that can be performed on a Range is dependent on the [@boost:/libs/iterator/doc/new-iter-concepts.html#iterator-traversal-concepts-lib-iterator-traversal traversal category] of the underlying iterator type. Therefore the range concepts are named to reflect which traversal category its iterators support. See also terminology and style guidelines. for more information about naming of ranges.
The concepts described below specifies associated types as [@../../libs/mpl/doc/refmanual/metafunction.html metafunctions] and all functions as free-standing functions to allow for a layer of indirection.
The concepts described below specifies associated types as [@boost:/libs/mpl/doc/refmanual/metafunction.html metafunctions] and all functions as free-standing functions to allow for a layer of indirection.
[endsect]
@ -217,7 +222,7 @@ __bidirectional_range__
[section Concept Checking]
Each of the range concepts has a corresponding concept checking class in the file [@../../boost/range/concepts.hpp `<boost/range/concepts.hpp>`]. These classes may be used in conjunction with the __concept_check__ to ensure that the type of a template parameter is compatible with a range concept. If not, a meaningful compile time error is generated. Checks are provided for the range concepts related to iterator traversal categories. For example, the following line checks that the type `T` models the __forward_range__ concept.
Each of the range concepts has a corresponding concept checking class in the file [@boost:/boost/range/concepts.hpp `<boost/range/concepts.hpp>`]. These classes may be used in conjunction with the __concept_check__ to ensure that the type of a template parameter is compatible with a range concept. If not, a meaningful compile time error is generated. Checks are provided for the range concepts related to iterator traversal categories. For example, the following line checks that the type `T` models the __forward_range__ concept.
``
BOOST_CONCEPT_ASSERT(( ForwardRangeConcept<T> ));
@ -246,6 +251,5 @@ __iterator_concepts__
__concept_check__
[endsect]
[endsect]

View File

@ -1,4 +1,9 @@
[section Examples]
[/
Copyright 2010 Neil Groves
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)
/]
[section:examples Examples]
Some examples are given in the accompanying test files:

View File

@ -1,4 +1,9 @@
[section FAQ]
[/
Copyright 2010 Neil Groves
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)
/]
[section:faq FAQ]
1. ['[*Why is there no difference between `range_iterator<C>::type` and `range_const_iterator<C>::type` for `std::pair<iterator, iterator>`?]]

View File

@ -1,5 +1,11 @@
[section Library Headers]
[/
Copyright 2010 Neil Groves
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)
/]
[section:headers Library Headers]
[section:general General]
[table
[[Header ] [Includes ] [Related Concept ]]
[[`<boost/range.hpp>` ] [everything from Boost.Range version 1 (Boost versions 1.42 and below). Includes the core range functions and metafunctinos, but excludes Range Adaptors and Range Algorithms. ] [- ]]
@ -23,7 +29,115 @@
[[`<boost/range/iterator_range.hpp>` ] [__iterator_range__ ] [- ]]
[[`<boost/range/sub_range.hpp>` ] [__sub_range__ ] [- ]]
[[`<boost/range/concepts.hpp>` ] [__range_concepts__ ] [- ]]
[[`<boost/range/adaptors.hpp>` ] [every range adaptor ] [- ]]
[[`<boost/range/algorithm.hpp>` ] [every range equivalent of an STL algorithm ] [- ]]
[[`<boost/range/algorithm_ext.hpp>` ] [every range algorithm that is an extension of the STL algorithms ] [- ]]
[[`<boost/range/counting_range.hpp>` ] [ __counting_range__ ] [-]]
[[`<boost/range/istream_range.hpp>` ] [ __istream_range__ ] [-]]
[[`<boost/range/irange.hpp>` ] [ __irange__ ] [-]]
[[`<boost/range/join.hpp>` ] [ __join__ ] [-]]
]
[endsect]
[section:adaptors Adaptors]
[table
[[Header ][Includes ]]
[[`<boost/range/adaptor/adjacent_filtered.hpp>`] [__range_adaptors_adjacent_filtered__ ]]
[[`<boost/range/adaptor/copied.hpp>`] [__range_adaptors_copied__]]
[[`<boost/range/adaptor/filtered.hpp>`] [__range_adaptors_filtered__]]
[[`<boost/range/adaptor/indexed.hpp>`] [__range_adaptors_indexed__]]
[[`<boost/range/adaptor/indirected.hpp.`] [__range_adaptors_indirected__]]
[[`<boost/range/adaptor/map.hpp>`] [__range_adaptors_map_keys__ __range_adaptors_map_values__]]
[[`<boost/range/adaptor/replaced.hpp>`] [__range_adaptors_replaced__]]
[[`<boost/range/adaptor/replaced_if.hpp>`] [__range_adaptors_replaced_if__]]
[[`<boost/range/adaptor/reversed.hpp>`] [__range_adaptors_reversed__]]
[[`<boost/range/adaptor/sliced.hpp>`] [__range_adaptors_sliced__]]
[[`<boost/range/adaptor/strided.hpp>`] [__range_adaptors_strided__]]
[[`<boost/range/adaptor/tokenized.hpp>`] [__range_adaptors_tokenized__]]
[[`<boost/range/adaptor/transformed.hpp>`] [__range_adaptors_transformed__]]
[[`<boost/range/adaptor/uniqued.hpp>`] [__range_adaptors_uniqued__]]
]
[endsect]
[section:algorithm Algorithm]
[table
[[Header ][Includes ]]
[[`<boost/range/algorithm/adjacent_find.hpp>`] [__range_algorithms_adjacent_find__]]
[[`<boost/range/algorithm/binary_search.hpp>`] [__range_algorithms_binary_search__]]
[[`<boost/range/algorithm/copy.hpp>`] [__range_algorithms_copy__]]
[[`<boost/range/algorithm/copy_backward.hpp>`] [__range_algorithms_copy_backward__]]
[[`<boost/range/algorithm/count.hpp>`] [__range_algorithms_count__]]
[[`<boost/range/algorithm/count_if.hpp>`] [__range_algorithms_count_if__]]
[[`<boost/range/algorithm/equal.hpp>`] [__range_algorithms_equal__]]
[[`<boost/range/algorithm/equal_range.hpp>`] [__range_algorithms_equal_range__]]
[[`<boost/range/algorithm/fill.hpp>`] [__range_algorithms_fill__]]
[[`<boost/range/algorithm/fill_n.hpp>`] [__range_algorithms_fill_n__]]
[[`<boost/range/algorithm/find.hpp>`] [__range_algorithms_find__]]
[[`<boost/range/algorithm/find_end.hpp>`] [__range_algorithms_find_end__]]
[[`<boost/range/algorithm/find_first_of.hpp>`] [__range_algorithms_find_first_of__]]
[[`<boost/range/algorithm/find_if.hpp>`] [__range_algorithms_find_if__]]
[[`<boost/range/algorithm/for_each.hpp>`] [__range_algorithms_for_each__]]
[[`<boost/range/algorithm/generate.hpp>`] [__range_algorithms_generate__]]
[[`<boost/range/algorithm/heap_algorithm.hpp>`] [__range_algorithms_push_heap__
__range_algorithms_pop_heap__
__range_algorithms_make_heap__
__range_algorithms_sort_heap__]]
[[`<boost/range/algorithm/inplace_merge.hpp>`] [__range_algorithms_inplace_merge__]]
[[`<boost/range/algorithm/lexicographical_compare.hpp>`] [__range_algorithms_lexicographical_compare__]]
[[`<boost/range/algorithm/lower_bound.hpp>`] [__range_algorithms_lower_bound__]]
[[`<boost/range/algorithm/max_element.hpp>`] [__range_algorithms_max_element__]]
[[`<boost/range/algorithm/merge.hpp>`] [__range_algorithms_merge__]]
[[`<boost/range/algorithm/min_element.hpp>`] [__range_algorithms_min_element__]]
[[`<boost/range/algorithm/mismatch.hpp>`] [__range_algorithms_mismatch__]]
[[`<boost/range/algorithm/nth_element.hpp>`] [__range_algorithms_nth_element__]]
[[`<boost/range/algorithm/partial_sort.hpp>`] [__range_algorithms_partial_sort__]]
[[`<boost/range/algorithm/partition.hpp>`] [__range_algorithms_partition__]]
[[`<boost/range/algorithm/permutation.hpp>`] [__range_algorithms_next_permutation__
__range_algorithms_prev_permutation__]]
[[`<boost/range/algorithm/random_shuffle.hpp>`] [__range_algorithms_random_shuffle__]]
[[`<boost/range/algorithm/remove.hpp>`] [__range_algorithms_remove__]]
[[`<boost/range/algorithm/remove_copy.hpp>`] [__range_algorithms_remove_copy__]]
[[`<boost/range/algorithm/remove_copy_if.hpp>`] [__range_algorithms_remove_copy_if__]]
[[`<boost/range/algorithm/remove_if.hpp>`] [__range_algorithms_remove_if__]]
[[`<boost/range/algorithm/replace.hpp>`] [__range_algorithms_replace__]]
[[`<boost/range/algorithm/replace_copy.hpp>`] [__range_algorithms_replace_copy__]]
[[`<boost/range/algorithm/replace_copy_if.hpp>`] [__range_algorithms_replace_copy_if__]]
[[`<boost/range/algorithm/replace_if.hpp>`] [__range_algorithms_replace_if__]]
[[`<boost/range/algorithm/reverse.hpp>`] [__range_algorithms_reverse__]]
[[`<boost/range/algorithm/reverse_copy.hpp>`] [__range_algorithms_reverse_copy__]]
[[`<boost/range/algorithm/rotate.hpp>`] [__range_algorithms_rotate__]]
[[`<boost/range/algorithm/rotate_copy.hpp>`] [__range_algorithms_rotate_copy__]]
[[`<boost/range/algorithm/search.hpp>`] [__range_algorithms_search__]]
[[`<boost/range/algorithm/search_n.hpp>`] [__range_algorithms_search_n__]]
[[`<boost/range/algorithm/set_algorithm.hpp>`] [__range_algorithms_includes__
__range_algorithms_set_union__
__range_algorithms_set_intersection__
__range_algorithms_set_difference__
__range_algorithms_set_symmetric_difference__]]
[[`<boost/range/algorithm/sort.hpp>`] [__range_algorithms_sort__]]
[[`<boost/range/algorithm/stable_partition.hpp>`] [__range_algorithms_stable_partition__]]
[[`<boost/range/algorithm/swap_ranges.hpp>`] [__range_algorithms_swap_ranges__]]
[[`<boost/range/algorithm/transform.hpp>`] [__range_algorithms_transform__]]
[[`<boost/range/algorithm/unique.hpp>`] [__range_algorithms_unique__]]
[[`<boost/range/algorithm/unique_copy.hpp>`] [__range_algorithms_unique_copy__]]
[[`<boost/range/algorithm/upper_bound.hpp>`] [__range_algorithms_upper_bound__]]
]
[endsect]
[section:algorithm_ext Algorithm Extensions]
[table
[[Header ][Includes ]]
[[`<boost/range/algorithm_ext/copy_n.hpp>`] [__range_algorithm_ext_copy_n__]]
[[`<boost/range/algorithm_ext/erase.hpp>`] [__range_algorithm_ext_erase__]]
[[`<boost/range/algorithm_ext/for_each.hpp>`] [__range_algorithm_ext_for_each__]]
[[`<boost/range/algorithm_ext/insert.hpp>`] [__range_algorithm_ext_insert__]]
[[`<boost/range/algorithm_ext/iota.hpp>`] [__range_algorithm_ext_iota__]]
[[`<boost/range/algorithm_ext/is_sorted.hpp>`] [__range_algorithm_ext_is_sorted__]]
[[`<boost/range/algorithm_ext/overwrite.hpp>`] [__range_algorithm_ext_overwrite__]]
[[`<boost/range/algorithm_ext/push_back.hpp>`] [__range_algorithm_ext_push_back__]]
[[`<boost/range/algorithm_ext/push_front.hpp>`] [__range_algorithm_ext_push_front__]]
]
[endsect]
[endsect]

View File

@ -1,12 +1,18 @@
[/
Copyright 2010 Neil Groves
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)
/]
[section:history_ack History and Acknowledgement]
[heading Version 1 - before Boost 1.43]
The library have been under way for a long time. Dietmar Kühl originally intended to submit an `array_traits` class template which had most of the functionality present now, but only for arrays and standard containers.
Meanwhile work on algorithms for containers in various contexts showed the need for handling pairs of iterators, and string libraries needed special treatment of character arrays. In the end it made sense to formalize the minimal requirements of these similar concepts. And the results are the Range concepts found in this library.
The term Range was adopted because of paragraph 24.1/7 from the C++ standard:
Most of the library's algorithmic templates that operate on data structures have interfaces that use ranges. A range is a pair of iterators that designate the beginning and end of the computation. A range [i, i) is an empty range; in general, a range [i, j) refers to the elements in the data structure starting with the one pointed to by i and up to but not including the one pointed to by j. Range [i, j) is valid if and only if j is reachable from i. The result of the application of functions in the library to invalid ranges is undefined.
Most of the library's algorithmic templates that operate on data structures have interfaces that use ranges. A range is a pair of iterators that designate the beginning and end of the computation. A range [i, i) is an empty range; in general, a range [i, j) refers to the elements in the data structure starting with the one pointed to by i and up to but not including the one pointed to by j. Range [i, j) is valid if and only if j is reachable from i. The result of the application of functions in the library to invalid ranges is undefined.
Special thanks goes to
@ -14,9 +20,39 @@ Special thanks goes to
* Pavel Vozenilek for help with porting the library
* Jonathan Turkanis and John Torjo for help with documentation
* Hartmut Kaiser for being review manager
* Jonathan Turkanis for porting the lib (as far sa possible) to vc6 and vc7.
* Jonathan Turkanis for porting the lib (as far sa possible) to vc6 and vc7.
The concept checks and their documentation was provided by Daniel Walker.
The concept checks and their documentation was provided by Daniel Walker.
[heading Version 2 - Boost 1.43 and beyond]
This version introduced Range Adaptors and Range Algorithms. This version 2 is
the result of a merge of all of the RangeEx features into Boost.Range.
There were an enormous number of very significant contributors through all
stages of this library.
Prior to Boost.RangeEx there had been a number of Range library implementations,
these include library implementations by Eric Niebler, Adobe,
Shunsuke Sogame etc. Eric Niebler contributed the Range Adaptor idea which is
arguably the single biggest innovation in this library. Inevitably a great deal
of commonality evolved in each of these libraries, but a considerable amount
of effort was expended to learn from all of the divergent techniques.
The people in the following list all made contributions in the form of reviews,
user feedback, design suggestions, or defect detection:
* Thorsten Ottosen: review management, design advice, documentation feedback
* Eric Niebler: early implementation, and review feedback
* Joel de Guzman: review
* Mathias Gaunard: review
* David Abrahams: implementation advice
* Robert Jones: defect reports, usage feedback
* Sean Parent: contributed experience from the Adobe range library
* Arno Schoedl: implementations, and review
* Rogier van Dalen: review
* Vincente Botet: review, documentation feedback
Regardless of how I write this section it will never truly fairly capture the
gratitude that I feel to all who have contributed. Thank you everyone.
[endsect]

View File

@ -2,8 +2,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Chapter&#160;1.&#160;Range 2.0</title>
<link rel="stylesheet" href="../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="next" href="range/introduction.html" title="Introduction">
</head>
@ -11,14 +11,14 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
<td align="center"><a href="../../../../index.html">Home</a></td>
<td align="center"><a href="../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav"><a accesskey="n" href="range/introduction.html"><img src="../../../../doc/html/images/next.png" alt="Next"></a></div>
<div class="chapter" title="Chapter&#160;1.&#160;Range 2.0">
<div class="spirit-nav"><a accesskey="n" href="range/introduction.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a></div>
<div class="chapter">
<div class="titlepage"><div>
<div><h2 class="title">
<a name="range"></a>Chapter&#160;1.&#160;Range 2.0</h2></div>
@ -29,8 +29,8 @@
<span class="firstname">Neil</span> <span class="surname">Groves</span>
</h3></div></div>
<div><p class="copyright">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves</p></div>
<div><div class="legalnotice" title="Legal Notice">
<a name="id3005003"></a><p>
<div><div class="legalnotice">
<a name="id607962"></a><p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
@ -40,7 +40,7 @@
<p><b>Table of Contents</b></p>
<dl>
<dt><span class="section"><a href="range/introduction.html">Introduction</a></span></dt>
<dt><span class="section"><a href="range/concepts.html"> Range Concepts</a></span></dt>
<dt><span class="section"><a href="range/concepts.html">Range Concepts</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="range/concepts/overview.html">Overview</a></span></dt>
<dt><span class="section"><a href="range/concepts/single_pass_range.html">Single Pass Range</a></span></dt>
@ -52,93 +52,102 @@
<dt><span class="section"><a href="range/reference.html">Reference</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="range/reference/overview.html">Overview</a></span></dt>
<dt><span class="section"><a href="range/reference/synopsis.html">Synopsis</a></span></dt>
<dt><span class="section"><a href="range/reference/semantics.html">Semantics</a></span></dt>
<dt><span class="section"><a href="range/reference/concept_implementation.html">Range concept
implementation</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="range/reference/semantics/metafunctions.html">Metafunctions</a></span></dt>
<dt><span class="section"><a href="range/reference/semantics/functions.html">Functions</a></span></dt>
<dt><span class="section"><a href="range/reference/concept_implementation/synopsis.html">Synopsis</a></span></dt>
<dt><span class="section"><a href="range/reference/concept_implementation/semantics.html">Semantics</a></span></dt>
</dl></dd>
<dt><span class="section"><a href="range/reference/adaptors.html"> Range Adaptors</a></span></dt>
<dt><span class="section"><a href="range/reference/adaptors.html">Range Adaptors</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="range/reference/adaptors/adaptors_introduction.html"> Introduction
<dt><span class="section"><a href="range/reference/adaptors/introduction.html">Introduction
and motivation</a></span></dt>
<dt><span class="section"><a href="range/reference/adaptors/adaptors_synopsis.html"> Synopsis</a></span></dt>
<dt><span class="section"><a href="range/reference/adaptors/adaptors_general_requirements.html">
General Requirements</a></span></dt>
<dt><span class="section"><a href="range/reference/adaptors/adaptors_reference.html"> Reference</a></span></dt>
<dt><span class="section"><a href="range/reference/adaptors/general_requirements.html">General
Requirements</a></span></dt>
<dt><span class="section"><a href="range/reference/adaptors/reference.html">Reference</a></span></dt>
</dl></dd>
<dt><span class="section"><a href="range/reference/algorithms.html"> Range Algorithm</a></span></dt>
<dt><span class="section"><a href="range/reference/algorithms.html">Range Algorithms</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="range/reference/algorithms/range_algorithm_introduction.html">
Introduction and motivation</a></span></dt>
<dt><span class="section"><a href="range/reference/algorithms/range_algorithm_mutating_algorithms.html">
Mutating algorithms</a></span></dt>
<dt><span class="section"><a href="range/reference/algorithms/range_algorithm_non_mutating_algorithms.html">
Non-mutating algorithms</a></span></dt>
<dt><span class="section"><a href="range/reference/algorithms/set_algorithms.html"> Set algorithms</a></span></dt>
<dt><span class="section"><a href="range/reference/algorithms/heap_algorithms.html"> Heap algorithms</a></span></dt>
<dt><span class="section"><a href="range/reference/algorithms/permutation_algorithms.html">
Permutation algorithms</a></span></dt>
<dt><span class="section"><a href="range/reference/algorithms/range_algorithm_new_algorithms.html">
New algorithms</a></span></dt>
<dt><span class="section"><a href="range/reference/algorithms/range_numeric.html"> Numeric
<dt><span class="section"><a href="range/reference/algorithms/introduction.html">Introduction
and motivation</a></span></dt>
<dt><span class="section"><a href="range/reference/algorithms/mutating.html">Mutating algorithms</a></span></dt>
<dt><span class="section"><a href="range/reference/algorithms/non_mutating.html">Non-mutating
algorithms</a></span></dt>
<dt><span class="section"><a href="range/reference/algorithms/set.html">Set algorithms</a></span></dt>
<dt><span class="section"><a href="range/reference/algorithms/heap.html">Heap algorithms</a></span></dt>
<dt><span class="section"><a href="range/reference/algorithms/permutation.html">Permutation
algorithms</a></span></dt>
<dt><span class="section"><a href="range/reference/algorithms/new.html">New algorithms</a></span></dt>
<dt><span class="section"><a href="range/reference/algorithms/numeric.html">Numeric algorithms</a></span></dt>
</dl></dd>
<dt><span class="section"><a href="range/reference/ranges.html"> Provided Ranges</a></span></dt>
<dt><span class="section"><a href="range/reference/ranges.html">Provided Ranges</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="range/reference/ranges/counting_range.html"> counting_range</a></span></dt>
<dt><span class="section"><a href="range/reference/ranges/istream_range.html"> istream_range</a></span></dt>
<dt><span class="section"><a href="range/reference/ranges/irange.html"> irange</a></span></dt>
<dt><span class="section"><a href="range/reference/ranges/any_range.html">any_range</a></span></dt>
<dt><span class="section"><a href="range/reference/ranges/counting_range.html">counting_range</a></span></dt>
<dt><span class="section"><a href="range/reference/ranges/istream_range.html">istream_range</a></span></dt>
<dt><span class="section"><a href="range/reference/ranges/irange.html">irange</a></span></dt>
</dl></dd>
<dt><span class="section"><a href="range/reference/extending.html"> Extending the library</a></span></dt>
<dt><span class="section"><a href="range/reference/utilities.html">Utilities</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="range/reference/extending/method_1.html"> Method 1: provide
<dt><span class="section"><a href="range/reference/utilities/iterator_range.html">Class <code class="computeroutput"><span class="identifier">iterator_range</span></code></a></span></dt>
<dt><span class="section"><a href="range/reference/utilities/sub_range.html">Class <code class="computeroutput"><span class="identifier">sub_range</span></code></a></span></dt>
<dt><span class="section"><a href="range/reference/utilities/join.html">Function join</a></span></dt>
</dl></dd>
<dt><span class="section"><a href="range/reference/extending.html">Extending the library</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="range/reference/extending/method_1.html">Method 1: provide
member functions and nested types</a></span></dt>
<dt><span class="section"><a href="range/reference/extending/method_2.html"> Method 2: provide
<dt><span class="section"><a href="range/reference/extending/method_2.html">Method 2: provide
free-standing functions and specialize metafunctions</a></span></dt>
<dt><span class="section"><a href="range/reference/extending/method_3.html"> Method 3: provide
<dt><span class="section"><a href="range/reference/extending/method_3.html">Method 3: provide
range adaptor implementations</a></span></dt>
</dl></dd>
</dl></dd>
<dt><span class="section"><a href="range/utilities.html"> Utilities</a></span></dt>
<dt><span class="section"><a href="range/style_guide.html">Terminology and style guidelines</a></span></dt>
<dt><span class="section"><a href="range/headers.html">Library Headers</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="range/utilities/iterator_range.html"> Class <code class="computeroutput"><span class="identifier">iterator_range</span></code></a></span></dt>
<dt><span class="section"><a href="range/utilities/sub_range.html"> Class <code class="computeroutput"><span class="identifier">sub_range</span></code></a></span></dt>
<dt><span class="section"><a href="range/utilities/join.html"> Function join</a></span></dt>
<dt><span class="section"><a href="range/headers/general.html">General</a></span></dt>
<dt><span class="section"><a href="range/headers/adaptors.html">Adaptors</a></span></dt>
<dt><span class="section"><a href="range/headers/algorithm.html">Algorithm</a></span></dt>
<dt><span class="section"><a href="range/headers/algorithm_ext.html">Algorithm Extensions</a></span></dt>
</dl></dd>
<dt><span class="section"><a href="range/style_guide.html"> Terminology and style guidelines</a></span></dt>
<dt><span class="section"><a href="range/library_headers.html">Library Headers</a></span></dt>
<dt><span class="section"><a href="range/examples.html">Examples</a></span></dt>
<dt><span class="section"><a href="range/mfc_atl.html"> MFC/ATL (courtesy of Shunsuke Sogame)</a></span></dt>
<dt><span class="section"><a href="range/mfc_atl.html">MFC/ATL (courtesy of Shunsuke Sogame)</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="range/mfc_atl/requirements.html"> Requirements</a></span></dt>
<dt><span class="section"><a href="range/mfc_atl/mfc_ranges.html"> MFC Ranges</a></span></dt>
<dt><span class="section"><a href="range/mfc_atl/atl_ranges.html"> ATL Ranges</a></span></dt>
<dt><span class="section"><a href="range/mfc_atl/const_ranges.html"> const Ranges</a></span></dt>
<dt><span class="section"><a href="range/mfc_atl/references.html"> References</a></span></dt>
<dt><span class="section"><a href="range/mfc_atl/requirements.html">Requirements</a></span></dt>
<dt><span class="section"><a href="range/mfc_atl/mfc_ranges.html">MFC Ranges</a></span></dt>
<dt><span class="section"><a href="range/mfc_atl/atl_ranges.html">ATL Ranges</a></span></dt>
<dt><span class="section"><a href="range/mfc_atl/const_ranges.html">const Ranges</a></span></dt>
<dt><span class="section"><a href="range/mfc_atl/references.html">References</a></span></dt>
</dl></dd>
<dt><span class="section"><a href="range/upgrade.html"> Upgrade version of Boost.Range</a></span></dt>
<dt><span class="section"><a href="range/upgrade.html">Upgrade version of Boost.Range</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="range/upgrade/upgrade_from_1_42.html"> Upgrade from version
<dt><span class="section"><a href="range/upgrade/upgrade_from_1_45.html">Upgrade from version
1.45</a></span></dt>
<dt><span class="section"><a href="range/upgrade/upgrade_from_1_42.html">Upgrade from version
1.42</a></span></dt>
<dt><span class="section"><a href="range/upgrade/upgrade_from_1_34.html"> Upgrade from version
<dt><span class="section"><a href="range/upgrade/upgrade_from_1_34.html">Upgrade from version
1.34</a></span></dt>
</dl></dd>
<dt><span class="section"><a href="range/portability.html">Portability</a></span></dt>
<dt><span class="section"><a href="range/faq.html">FAQ</a></span></dt>
<dt><span class="section"><a href="range/history_ack.html"> History and Acknowledgement</a></span></dt>
<dt><span class="section"><a href="range/history_ack.html">History and Acknowledgement</a></span></dt>
</dl>
</div>
<p>
Boost.Range is a collection of concepts and utilities that are particularly useful
for specifying and implementing generic algorithms.
Boost.Range is a collection of concepts and utilities, range-based algorithms,
as well as range adaptors that allow for efficient and expressive code.
</p>
<p>
Using Boost.Range inplace of the standard library alternatives results in more
readable code and in many cases greater efficiency.
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"><p><small>Last revised: April 11, 2010 at 21:49:16 GMT</small></p></td>
<td align="left"><p><small>Last revised: January 01, 2011 at 16:31:27 GMT</small></p></td>
<td align="right"><div class="copyright-footer"></div></td>
</tr></table>
<hr>
<div class="spirit-nav"><a accesskey="n" href="range/introduction.html"><img src="../../../../doc/html/images/next.png" alt="Next"></a></div>
<div class="spirit-nav"><a accesskey="n" href="range/introduction.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a></div>
</body>
</html>

View File

@ -9,117 +9,136 @@ range/concepts/random_access_range.html
range/concepts/concept_checking.html
range/reference.html
range/reference/overview.html
range/reference/synopsis.html
range/reference/semantics.html
range/reference/semantics/metafunctions.html
range/reference/semantics/functions.html
range/reference/concept_implementation.html
range/reference/concept_implementation/synopsis.html
range/reference/concept_implementation/semantics.html
range/reference/concept_implementation/semantics/metafunctions.html
range/reference/concept_implementation/semantics/functions.html
range/reference/adaptors.html
range/reference/adaptors/adaptors_introduction.html
range/reference/adaptors/adaptors_synopsis.html
range/reference/adaptors/adaptors_general_requirements.html
range/reference/adaptors/adaptors_reference.html
range/reference/adaptors/adaptors_reference/adjacent_filtered.html
range/reference/adaptors/adaptors_reference/copied.html
range/reference/adaptors/adaptors_reference/filtered.html
range/reference/adaptors/adaptors_reference/indexed.html
range/reference/adaptors/adaptors_reference/indirected.html
range/reference/adaptors/adaptors_reference/map_keys.html
range/reference/adaptors/adaptors_reference/map_values.html
range/reference/adaptors/adaptors_reference/replaced.html
range/reference/adaptors/adaptors_reference/replaced_if.html
range/reference/adaptors/adaptors_reference/reversed.html
range/reference/adaptors/adaptors_reference/sliced.html
range/reference/adaptors/adaptors_reference/strided.html
range/reference/adaptors/adaptors_reference/tokenized.html
range/reference/adaptors/adaptors_reference/transformed.html
range/reference/adaptors/adaptors_reference/uniqued.html
range/reference/adaptors/introduction.html
range/reference/adaptors/general_requirements.html
range/reference/adaptors/reference.html
range/reference/adaptors/reference/adjacent_filtered.html
range/reference/adaptors/reference/copied.html
range/reference/adaptors/reference/filtered.html
range/reference/adaptors/reference/indexed.html
range/reference/adaptors/reference/indirected.html
range/reference/adaptors/reference/map_keys.html
range/reference/adaptors/reference/map_values.html
range/reference/adaptors/reference/replaced.html
range/reference/adaptors/reference/replaced_if.html
range/reference/adaptors/reference/reversed.html
range/reference/adaptors/reference/sliced.html
range/reference/adaptors/reference/strided.html
range/reference/adaptors/reference/type_erased.html
range/reference/adaptors/reference/tokenized.html
range/reference/adaptors/reference/transformed.html
range/reference/adaptors/reference/uniqued.html
range/reference/algorithms.html
range/reference/algorithms/range_algorithm_introduction.html
range/reference/algorithms/range_algorithm_mutating_algorithms.html
range/reference/algorithms/range_algorithm_mutating_algorithms/copy.html
range/reference/algorithms/range_algorithm_mutating_algorithms/copy_backward.html
range/reference/algorithms/range_algorithm_mutating_algorithms/fill.html
range/reference/algorithms/range_algorithm_mutating_algorithms/fill_n.html
range/reference/algorithms/range_algorithm_mutating_algorithms/generate.html
range/reference/algorithms/range_algorithm_mutating_algorithms/inplace_merge.html
range/reference/algorithms/range_algorithm_mutating_algorithms/merge.html
range/reference/algorithms/range_algorithm_mutating_algorithms/nth_element.html
range/reference/algorithms/range_algorithm_mutating_algorithms/partial_sort.html
range/reference/algorithms/range_algorithm_mutating_algorithms/partition.html
range/reference/algorithms/range_algorithm_mutating_algorithms/random_shuffle.html
range/reference/algorithms/range_algorithm_mutating_algorithms/remove.html
range/reference/algorithms/range_algorithm_mutating_algorithms/remove_if.html
range/reference/algorithms/range_algorithm_mutating_algorithms/replace.html
range/reference/algorithms/range_algorithm_mutating_algorithms/replace_if.html
range/reference/algorithms/range_algorithm_mutating_algorithms/rotate.html
range/reference/algorithms/range_algorithm_mutating_algorithms/sort.html
range/reference/algorithms/range_algorithm_mutating_algorithms/stable_partition.html
range/reference/algorithms/range_algorithm_mutating_algorithms/stable_sort.html
range/reference/algorithms/range_algorithm_mutating_algorithms/transform.html
range/reference/algorithms/range_algorithm_mutating_algorithms/unique.html
range/reference/algorithms/range_algorithm_non_mutating_algorithms.html
range/reference/algorithms/range_algorithm_non_mutating_algorithms/adjacent_find.html
range/reference/algorithms/range_algorithm_non_mutating_algorithms/binary_search.html
range/reference/algorithms/range_algorithm_non_mutating_algorithms/count.html
range/reference/algorithms/range_algorithm_non_mutating_algorithms/equal.html
range/reference/algorithms/range_algorithm_non_mutating_algorithms/equal_range.html
range/reference/algorithms/range_algorithm_non_mutating_algorithms/for_each.html
range/reference/algorithms/range_algorithm_non_mutating_algorithms/find.html
range/reference/algorithms/range_algorithm_non_mutating_algorithms/find_end.html
range/reference/algorithms/range_algorithm_non_mutating_algorithms/find_first_of.html
range/reference/algorithms/range_algorithm_non_mutating_algorithms/find_if.html
range/reference/algorithms/range_algorithm_non_mutating_algorithms/lexicographical_compare.html
range/reference/algorithms/range_algorithm_non_mutating_algorithms/lower_bound.html
range/reference/algorithms/range_algorithm_non_mutating_algorithms/max_element.html
range/reference/algorithms/range_algorithm_non_mutating_algorithms/min_element.html
range/reference/algorithms/range_algorithm_non_mutating_algorithms/mismatch.html
range/reference/algorithms/range_algorithm_non_mutating_algorithms/search.html
range/reference/algorithms/range_algorithm_non_mutating_algorithms/upper_bound.html
range/reference/algorithms/set_algorithms.html
range/reference/algorithms/set_algorithms/includes.html
range/reference/algorithms/set_algorithms/set_union.html
range/reference/algorithms/set_algorithms/set_intersection.html
range/reference/algorithms/set_algorithms/set_difference.html
range/reference/algorithms/set_algorithms/set_symmetric_difference.html
range/reference/algorithms/heap_algorithms.html
range/reference/algorithms/heap_algorithms/push_heap.html
range/reference/algorithms/heap_algorithms/pop_heap.html
range/reference/algorithms/heap_algorithms/make_heap.html
range/reference/algorithms/heap_algorithms/sort_heap.html
range/reference/algorithms/permutation_algorithms.html
range/reference/algorithms/permutation_algorithms/next_permutation.html
range/reference/algorithms/permutation_algorithms/prev_permutation.html
range/reference/algorithms/range_algorithm_new_algorithms.html
range/reference/algorithms/range_algorithm_new_algorithms/erase.html
range/reference/algorithms/range_algorithm_new_algorithms/for_each.html
range/reference/algorithms/range_algorithm_new_algorithms/insert.html
range/reference/algorithms/range_algorithm_new_algorithms/iota.html
range/reference/algorithms/range_algorithm_new_algorithms/overwrite.html
range/reference/algorithms/range_algorithm_new_algorithms/push_back.html
range/reference/algorithms/range_algorithm_new_algorithms/push_front.html
range/reference/algorithms/range_algorithm_new_algorithms/remove_erase.html
range/reference/algorithms/range_algorithm_new_algorithms/remove_erase_if.html
range/reference/algorithms/range_numeric.html
range/reference/algorithms/range_numeric/accumulate.html
range/reference/algorithms/range_numeric/adjacent_difference.html
range/reference/algorithms/range_numeric/inner_product.html
range/reference/algorithms/range_numeric/partial_sum.html
range/reference/algorithms/introduction.html
range/reference/algorithms/mutating.html
range/reference/algorithms/mutating/copy.html
range/reference/algorithms/mutating/copy_backward.html
range/reference/algorithms/mutating/fill.html
range/reference/algorithms/mutating/fill_n.html
range/reference/algorithms/mutating/generate.html
range/reference/algorithms/mutating/inplace_merge.html
range/reference/algorithms/mutating/merge.html
range/reference/algorithms/mutating/nth_element.html
range/reference/algorithms/mutating/partial_sort.html
range/reference/algorithms/mutating/partition.html
range/reference/algorithms/mutating/random_shuffle.html
range/reference/algorithms/mutating/remove.html
range/reference/algorithms/mutating/remove_copy.html
range/reference/algorithms/mutating/remove_copy_if.html
range/reference/algorithms/mutating/remove_if.html
range/reference/algorithms/mutating/replace.html
range/reference/algorithms/mutating/replace_copy.html
range/reference/algorithms/mutating/replace_copy_if.html
range/reference/algorithms/mutating/replace_if.html
range/reference/algorithms/mutating/reverse.html
range/reference/algorithms/mutating/reverse_copy.html
range/reference/algorithms/mutating/rotate.html
range/reference/algorithms/mutating/rotate_copy.html
range/reference/algorithms/mutating/sort.html
range/reference/algorithms/mutating/stable_partition.html
range/reference/algorithms/mutating/stable_sort.html
range/reference/algorithms/mutating/swap_ranges.html
range/reference/algorithms/mutating/transform.html
range/reference/algorithms/mutating/unique.html
range/reference/algorithms/mutating/unique_copy.html
range/reference/algorithms/non_mutating.html
range/reference/algorithms/non_mutating/adjacent_find.html
range/reference/algorithms/non_mutating/binary_search.html
range/reference/algorithms/non_mutating/count.html
range/reference/algorithms/non_mutating/count_if.html
range/reference/algorithms/non_mutating/equal.html
range/reference/algorithms/non_mutating/equal_range.html
range/reference/algorithms/non_mutating/for_each.html
range/reference/algorithms/non_mutating/find.html
range/reference/algorithms/non_mutating/find_end.html
range/reference/algorithms/non_mutating/find_first_of.html
range/reference/algorithms/non_mutating/find_if.html
range/reference/algorithms/non_mutating/lexicographical_compare.html
range/reference/algorithms/non_mutating/lower_bound.html
range/reference/algorithms/non_mutating/max_element.html
range/reference/algorithms/non_mutating/min_element.html
range/reference/algorithms/non_mutating/mismatch.html
range/reference/algorithms/non_mutating/search.html
range/reference/algorithms/non_mutating/search_n.html
range/reference/algorithms/non_mutating/upper_bound.html
range/reference/algorithms/set.html
range/reference/algorithms/set/includes.html
range/reference/algorithms/set/set_union.html
range/reference/algorithms/set/set_intersection.html
range/reference/algorithms/set/set_difference.html
range/reference/algorithms/set/set_symmetric_difference.html
range/reference/algorithms/heap.html
range/reference/algorithms/heap/push_heap.html
range/reference/algorithms/heap/pop_heap.html
range/reference/algorithms/heap/make_heap.html
range/reference/algorithms/heap/sort_heap.html
range/reference/algorithms/permutation.html
range/reference/algorithms/permutation/next_permutation.html
range/reference/algorithms/permutation/prev_permutation.html
range/reference/algorithms/new.html
range/reference/algorithms/new/copy_n.html
range/reference/algorithms/new/erase.html
range/reference/algorithms/new/for_each.html
range/reference/algorithms/new/insert.html
range/reference/algorithms/new/iota.html
range/reference/algorithms/new/is_sorted.html
range/reference/algorithms/new/overwrite.html
range/reference/algorithms/new/push_back.html
range/reference/algorithms/new/push_front.html
range/reference/algorithms/new/remove_erase.html
range/reference/algorithms/new/remove_erase_if.html
range/reference/algorithms/numeric.html
range/reference/algorithms/numeric/accumulate.html
range/reference/algorithms/numeric/adjacent_difference.html
range/reference/algorithms/numeric/inner_product.html
range/reference/algorithms/numeric/partial_sum.html
range/reference/ranges.html
range/reference/ranges/any_range.html
range/reference/ranges/counting_range.html
range/reference/ranges/istream_range.html
range/reference/ranges/irange.html
range/reference/utilities.html
range/reference/utilities/iterator_range.html
range/reference/utilities/sub_range.html
range/reference/utilities/join.html
range/reference/extending.html
range/reference/extending/method_1.html
range/reference/extending/method_2.html
range/reference/extending/method_3.html
range/reference/extending/method_3/method_3_1.html
range/reference/extending/method_3/method_3_2.html
range/utilities.html
range/utilities/iterator_range.html
range/utilities/sub_range.html
range/utilities/join.html
range/style_guide.html
range/library_headers.html
range/headers.html
range/headers/general.html
range/headers/adaptors.html
range/headers/algorithm.html
range/headers/algorithm_ext.html
range/examples.html
range/mfc_atl.html
range/mfc_atl/requirements.html
@ -128,6 +147,7 @@ range/mfc_atl/atl_ranges.html
range/mfc_atl/const_ranges.html
range/mfc_atl/references.html
range/upgrade.html
range/upgrade/upgrade_from_1_45.html
range/upgrade/upgrade_from_1_42.html
range/upgrade/upgrade_from_1_34.html
range/portability.html

View File

@ -2,8 +2,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Concepts</title>
<link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="prev" href="introduction.html" title="Introduction">
@ -13,18 +13,18 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="introduction.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="concepts/overview.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="introduction.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="concepts/overview.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Concepts">
<div class="section">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="range.concepts"></a><a class="link" href="concepts.html" title="Range Concepts"> Range Concepts</a>
<a name="range.concepts"></a><a class="link" href="concepts.html" title="Range Concepts">Range Concepts</a>
</h2></div></div></div>
<div class="toc"><dl>
<dt><span class="section"><a href="concepts/overview.html">Overview</a></span></dt>
@ -45,7 +45,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="introduction.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="concepts/overview.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="introduction.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="concepts/overview.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,8 +2,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Bidirectional Range</title>
<link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../concepts.html" title="Range Concepts">
<link rel="prev" href="forward_range.html" title="Forward Range">
@ -13,21 +13,21 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="forward_range.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="random_access_range.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="forward_range.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="random_access_range.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Bidirectional Range">
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.concepts.bidirectional_range"></a><a class="link" href="bidirectional_range.html" title="Bidirectional Range">Bidirectional Range</a>
</h3></div></div></div>
<a name="range.concepts.bidirectional_range.notation"></a><h5>
<a name="id3017410"></a>
<a name="id650256"></a>
<a class="link" href="bidirectional_range.html#range.concepts.bidirectional_range.notation">Notation</a>
</h5>
<div class="informaltable"><table class="table">
@ -65,7 +65,7 @@
</tbody>
</table></div>
<a name="range.concepts.bidirectional_range.description"></a><h5>
<a name="id3017508"></a>
<a name="id650345"></a>
<a class="link" href="bidirectional_range.html#range.concepts.bidirectional_range.description">Description</a>
</h5>
<p>
@ -75,7 +75,7 @@
Traversal Iterator</a>.
</p>
<a name="range.concepts.bidirectional_range.refinement_of"></a><h5>
<a name="id3017574"></a>
<a name="id650403"></a>
<a class="link" href="bidirectional_range.html#range.concepts.bidirectional_range.refinement_of">Refinement
of</a>
</h5>
@ -83,7 +83,7 @@
<a class="link" href="forward_range.html" title="Forward Range">Forward Range</a>
</p>
<a name="range.concepts.bidirectional_range.associated_types"></a><h5>
<a name="id3017602"></a>
<a name="id650426"></a>
<a class="link" href="bidirectional_range.html#range.concepts.bidirectional_range.associated_types">Associated
types</a>
</h5>
@ -136,7 +136,7 @@
</tbody>
</table></div>
<a name="range.concepts.bidirectional_range.valid_expressions"></a><h5>
<a name="id3017768"></a>
<a name="id650581"></a>
<a class="link" href="bidirectional_range.html#range.concepts.bidirectional_range.valid_expressions">Valid
expressions</a>
</h5>
@ -221,7 +221,7 @@
</tbody>
</table></div>
<a name="range.concepts.bidirectional_range.complexity_guarantees"></a><h5>
<a name="id3018247"></a>
<a name="id651042"></a>
<a class="link" href="bidirectional_range.html#range.concepts.bidirectional_range.complexity_guarantees">Complexity
guarantees</a>
</h5>
@ -232,7 +232,7 @@
<a class="link" href="forward_range.html" title="Forward Range">Forward Range</a>.
</p>
<a name="range.concepts.bidirectional_range.invariants"></a><h5>
<a name="id3018398"></a>
<a name="id651182"></a>
<a class="link" href="bidirectional_range.html#range.concepts.bidirectional_range.invariants">Invariants</a>
</h5>
<div class="informaltable"><table class="table">
@ -272,15 +272,16 @@
</tbody>
</table></div>
<a name="range.concepts.bidirectional_range.see_also"></a><h5>
<a name="id3018659"></a>
<a name="id651431"></a>
<a class="link" href="bidirectional_range.html#range.concepts.bidirectional_range.see_also">See also</a>
</h5>
<p>
<a class="link" href="../reference/semantics/metafunctions.html" title="Metafunctions">Implementation of
metafunctions</a>
<a class="link" href="../reference/concept_implementation/semantics/metafunctions.html" title="Metafunctions">Implementation
of metafunctions</a>
</p>
<p>
<a class="link" href="../reference/semantics/functions.html" title="Functions">Implementation of functions</a>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions">Implementation
of functions</a>
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
@ -293,7 +294,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="forward_range.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="random_access_range.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="forward_range.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="random_access_range.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,8 +2,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Concept Checking</title>
<link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../concepts.html" title="Range Concepts">
<link rel="prev" href="random_access_range.html" title="Random Access Range">
@ -13,22 +13,22 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="random_access_range.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../reference.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="random_access_range.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../reference.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Concept Checking">
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.concepts.concept_checking"></a><a class="link" href="concept_checking.html" title="Concept Checking">Concept Checking</a>
</h3></div></div></div>
<p>
Each of the range concepts has a corresponding concept checking class in
the file <a href="../../../../boost/range/concepts.hpp" target="_top"><code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">concepts</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code></a>.
the file <a href="../../../../../../boost/range/concepts.hpp" target="_top"><code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">concepts</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code></a>.
These classes may be used in conjunction with the <a href="../../../../../../libs/concept_check/index.html" target="_top">Boost
Concept Check library</a> to ensure that the type of a template parameter
is compatible with a range concept. If not, a meaningful compile time error
@ -62,24 +62,24 @@
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
Class SinglePassRangeConcept checks for <a class="link" href="single_pass_range.html" title="Single Pass Range">Single
Pass Range</a>
</li>
Class SinglePassRangeConcept checks for <a class="link" href="single_pass_range.html" title="Single Pass Range">Single
Pass Range</a>
</li>
<li class="listitem">
Class ForwardRangeConcept checks for <a class="link" href="forward_range.html" title="Forward Range">Forward
Range</a>
</li>
Class ForwardRangeConcept checks for <a class="link" href="forward_range.html" title="Forward Range">Forward
Range</a>
</li>
<li class="listitem">
Class BidirectionalRangeConcept checks for <a class="link" href="bidirectional_range.html" title="Bidirectional Range">Bidirectional
Range</a>
</li>
Class BidirectionalRangeConcept checks for <a class="link" href="bidirectional_range.html" title="Bidirectional Range">Bidirectional
Range</a>
</li>
<li class="listitem">
Class RandomAccessRangeConcept checks for <a class="link" href="random_access_range.html" title="Random Access Range">Random
Access Range</a>
</li>
Class RandomAccessRangeConcept checks for <a class="link" href="random_access_range.html" title="Random Access Range">Random
Access Range</a>
</li>
</ul></div>
<a name="range.concepts.concept_checking.see_also"></a><h5>
<a name="id3019669"></a>
<a name="id652377"></a>
<a class="link" href="concept_checking.html#range.concepts.concept_checking.see_also">See also</a>
</h5>
<p>
@ -102,7 +102,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="random_access_range.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../reference.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="random_access_range.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../reference.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,8 +2,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Forward Range</title>
<link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../concepts.html" title="Range Concepts">
<link rel="prev" href="single_pass_range.html" title="Single Pass Range">
@ -13,21 +13,21 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="single_pass_range.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="bidirectional_range.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="single_pass_range.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="bidirectional_range.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Forward Range">
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.concepts.forward_range"></a><a class="link" href="forward_range.html" title="Forward Range">Forward Range</a>
</h3></div></div></div>
<a name="range.concepts.forward_range.notation"></a><h5>
<a name="id3017003"></a>
<a name="id649886"></a>
<a class="link" href="forward_range.html#range.concepts.forward_range.notation">Notation</a>
</h5>
<div class="informaltable"><table class="table">
@ -65,7 +65,7 @@
</tbody>
</table></div>
<a name="range.concepts.forward_range.description"></a><h5>
<a name="id3017099"></a>
<a name="id649974"></a>
<a class="link" href="forward_range.html#range.concepts.forward_range.description">Description</a>
</h5>
<p>
@ -73,14 +73,14 @@
Traversal Iterator</a>.
</p>
<a name="range.concepts.forward_range.refinement_of"></a><h5>
<a name="id3017171"></a>
<a name="id650039"></a>
<a class="link" href="forward_range.html#range.concepts.forward_range.refinement_of">Refinement of</a>
</h5>
<p>
<a class="link" href="single_pass_range.html" title="Single Pass Range">Single Pass Range</a>
</p>
<a name="range.concepts.forward_range.associated_types"></a><h5>
<a name="id3017200"></a>
<a name="id650062"></a>
<a class="link" href="forward_range.html#range.concepts.forward_range.associated_types">Associated
types</a>
</h5>
@ -132,15 +132,16 @@
</tbody>
</table></div>
<a name="range.concepts.forward_range.see_also"></a><h5>
<a name="id3017357"></a>
<a name="id650211"></a>
<a class="link" href="forward_range.html#range.concepts.forward_range.see_also">See also</a>
</h5>
<p>
<a class="link" href="../reference/semantics/metafunctions.html" title="Metafunctions">Implementation of
metafunctions</a>
<a class="link" href="../reference/concept_implementation/semantics/metafunctions.html" title="Metafunctions">Implementation
of metafunctions</a>
</p>
<p>
<a class="link" href="../reference/semantics/functions.html" title="Functions">Implementation of functions</a>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions">Implementation
of functions</a>
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
@ -153,7 +154,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="single_pass_range.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="bidirectional_range.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="single_pass_range.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="bidirectional_range.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,8 +2,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Overview</title>
<link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../concepts.html" title="Range Concepts">
<link rel="prev" href="../concepts.html" title="Range Concepts">
@ -13,16 +13,16 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../concepts.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="single_pass_range.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="../concepts.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="single_pass_range.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Overview">
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.concepts.overview"></a><a class="link" href="overview.html" title="Overview">Overview</a>
</h3></div></div></div>
@ -41,25 +41,25 @@
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
own the elements that can be accessed through it,
</li>
own the elements that can be accessed through it,
</li>
<li class="listitem">
have copy semantics,
</li>
have copy semantics,
</li>
</ul></div>
<p>
Because of the second requirement, a Range object must be passed by (const
or non-const) reference in generic code.
</p>
<p>
The operations that can be performed on a Range is dependent on the <a href="../../../../iterator/doc/new-iter-concepts.html#iterator-traversal-concepts-lib-iterator-traversal" target="_top">traversal
The operations that can be performed on a Range is dependent on the <a href="../../../../../../libs/iterator/doc/new-iter-concepts.html#iterator-traversal-concepts-lib-iterator-traversal" target="_top">traversal
category</a> of the underlying iterator type. Therefore the range concepts
are named to reflect which traversal category its iterators support. See
also terminology and style guidelines. for more information about naming
of ranges.
</p>
<p>
The concepts described below specifies associated types as <a href="../../../../libs/mpl/doc/refmanual/metafunction.html" target="_top">metafunctions</a>
The concepts described below specifies associated types as <a href="../../../../../../libs/mpl/doc/refmanual/metafunction.html" target="_top">metafunctions</a>
and all functions as free-standing functions to allow for a layer of indirection.
</p>
</div>
@ -73,7 +73,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../concepts.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="single_pass_range.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="../concepts.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="single_pass_range.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,8 +2,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Random Access Range</title>
<link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../concepts.html" title="Range Concepts">
<link rel="prev" href="bidirectional_range.html" title="Bidirectional Range">
@ -13,21 +13,21 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="bidirectional_range.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="concept_checking.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="bidirectional_range.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="concept_checking.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Random Access Range">
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.concepts.random_access_range"></a><a class="link" href="random_access_range.html" title="Random Access Range">Random Access Range</a>
</h3></div></div></div>
<a name="range.concepts.random_access_range.description"></a><h5>
<a name="id3018712"></a>
<a name="id651477"></a>
<a class="link" href="random_access_range.html#range.concepts.random_access_range.description">Description</a>
</h5>
<p>
@ -35,7 +35,7 @@
Access Traversal Iterator</a>.
</p>
<a name="range.concepts.random_access_range.refinement_of"></a><h5>
<a name="id3018784"></a>
<a name="id651543"></a>
<a class="link" href="random_access_range.html#range.concepts.random_access_range.refinement_of">Refinement
of</a>
</h5>
@ -43,7 +43,7 @@
<a class="link" href="bidirectional_range.html" title="Bidirectional Range">Bidirectional Range</a>
</p>
<a name="range.concepts.random_access_range.valid_expressions"></a><h5>
<a name="id3018812"></a>
<a name="id651566"></a>
<a class="link" href="random_access_range.html#range.concepts.random_access_range.valid_expressions">Valid
expressions</a>
</h5>
@ -89,7 +89,7 @@
</tr></tbody>
</table></div>
<a name="range.concepts.random_access_range.expression_semantics"></a><h5>
<a name="id3018959"></a>
<a name="id651704"></a>
<a class="link" href="random_access_range.html#range.concepts.random_access_range.expression_semantics">Expression
semantics</a>
</h5>
@ -139,7 +139,7 @@
</tr></tbody>
</table></div>
<a name="range.concepts.random_access_range.complexity_guarantees"></a><h5>
<a name="id3019185"></a>
<a name="id651919"></a>
<a class="link" href="random_access_range.html#range.concepts.random_access_range.complexity_guarantees">Complexity
guarantees</a>
</h5>
@ -147,7 +147,7 @@
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">size</span><span class="special">(</span><span class="identifier">a</span><span class="special">)</span></code> completes in amortized constant time.
</p>
<a name="range.concepts.random_access_range.invariants"></a><h5>
<a name="id3019239"></a>
<a name="id651967"></a>
<a class="link" href="random_access_range.html#range.concepts.random_access_range.invariants">Invariants</a>
</h5>
<div class="informaltable"><table class="table">
@ -181,7 +181,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="bidirectional_range.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="concept_checking.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="bidirectional_range.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="concept_checking.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,8 +2,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Single Pass Range</title>
<link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../concepts.html" title="Range Concepts">
<link rel="prev" href="overview.html" title="Overview">
@ -13,21 +13,21 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="overview.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="forward_range.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="overview.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="forward_range.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Single Pass Range">
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.concepts.single_pass_range"></a><a class="link" href="single_pass_range.html" title="Single Pass Range">Single Pass Range</a>
</h3></div></div></div>
<a name="range.concepts.single_pass_range.notation"></a><h5>
<a name="id3015625"></a>
<a name="id648593"></a>
<a class="link" href="single_pass_range.html#range.concepts.single_pass_range.notation">Notation</a>
</h5>
<div class="informaltable"><table class="table">
@ -65,7 +65,7 @@
</tbody>
</table></div>
<a name="range.concepts.single_pass_range.description"></a><h5>
<a name="id3015727"></a>
<a name="id648686"></a>
<a class="link" href="single_pass_range.html#range.concepts.single_pass_range.description">Description</a>
</h5>
<p>
@ -73,7 +73,7 @@
Pass Iterator</a>.
</p>
<a name="range.concepts.single_pass_range.associated_types"></a><h5>
<a name="id3015799"></a>
<a name="id648751"></a>
<a class="link" href="single_pass_range.html#range.concepts.single_pass_range.associated_types">Associated
types</a>
</h5>
@ -126,7 +126,7 @@
</tbody>
</table></div>
<a name="range.concepts.single_pass_range.valid_expressions"></a><h5>
<a name="id3015973"></a>
<a name="id648914"></a>
<a class="link" href="single_pass_range.html#range.concepts.single_pass_range.valid_expressions">Valid
expressions</a>
</h5>
@ -198,7 +198,7 @@
</tbody>
</table></div>
<a name="range.concepts.single_pass_range.expression_semantics"></a><h5>
<a name="id3016307"></a>
<a name="id649233"></a>
<a class="link" href="single_pass_range.html#range.concepts.single_pass_range.expression_semantics">Expression
semantics</a>
</h5>
@ -266,7 +266,7 @@
</tbody>
</table></div>
<a name="range.concepts.single_pass_range.complexity_guarantees"></a><h5>
<a name="id3016578"></a>
<a name="id649490"></a>
<a class="link" href="single_pass_range.html#range.concepts.single_pass_range.complexity_guarantees">Complexity
guarantees</a>
</h5>
@ -276,7 +276,7 @@
constant time.
</p>
<a name="range.concepts.single_pass_range.invariants"></a><h5>
<a name="id3016661"></a>
<a name="id649567"></a>
<a class="link" href="single_pass_range.html#range.concepts.single_pass_range.invariants">Invariants</a>
</h5>
<div class="informaltable"><table class="table">
@ -316,18 +316,19 @@
</tbody>
</table></div>
<a name="range.concepts.single_pass_range.see_also"></a><h5>
<a name="id3016932"></a>
<a name="id649823"></a>
<a class="link" href="single_pass_range.html#range.concepts.single_pass_range.see_also">See also</a>
</h5>
<p>
<a class="link" href="../reference/extending.html" title="Extending the library">Extending the library for UDTs</a>
</p>
<p>
<a class="link" href="../reference/semantics/metafunctions.html" title="Metafunctions">Implementation of
metafunctions</a>
<a class="link" href="../reference/concept_implementation/semantics/metafunctions.html" title="Metafunctions">Implementation
of metafunctions</a>
</p>
<p>
<a class="link" href="../reference/semantics/functions.html" title="Functions">Implementation of functions</a>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions">Implementation
of functions</a>
</p>
<p>
<a href="http://www.sgi.com/Technology/STL/Container.html" target="_top">Container</a>
@ -343,7 +344,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="overview.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="forward_range.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="overview.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="forward_range.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,27 +2,27 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Examples</title>
<link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="prev" href="library_headers.html" title="Library Headers">
<link rel="prev" href="headers/algorithm_ext.html" title="Algorithm Extensions">
<link rel="next" href="mfc_atl.html" title="MFC/ATL (courtesy of Shunsuke Sogame)">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="library_headers.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mfc_atl.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="headers/algorithm_ext.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="mfc_atl.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Examples">
<div class="section">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="range.examples"></a><a class="link" href="examples.html" title="Examples">Examples</a>
</h2></div></div></div>
@ -31,19 +31,31 @@
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<a href="http://www.boost.org/libs/range/test/string.cpp" target="_top">string.cpp</a>
shows how to implement a container version of <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">find</span><span class="special">()</span></code> that works with <code class="computeroutput"><span class="keyword">char</span><span class="special">[]</span></code>,<code class="computeroutput"><span class="keyword">wchar_t</span><span class="special">[]</span></code>,<code class="computeroutput"><span class="keyword">char</span><span class="special">*</span></code>,<code class="computeroutput"><span class="keyword">wchar_t</span><span class="special">*</span></code>.
</li>
<a href="http://www.boost.org/libs/range/test/string.cpp" target="_top">string.cpp</a>
shows how to implement a container version of <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">find</span><span class="special">()</span></code> that works with <code class="computeroutput"><span class="keyword">char</span><span class="special">[]</span></code>,<code class="computeroutput"><span class="keyword">wchar_t</span><span class="special">[]</span></code>,<code class="computeroutput"><span class="keyword">char</span><span class="special">*</span></code>,<code class="computeroutput"><span class="keyword">wchar_t</span><span class="special">*</span></code>.
</li>
<li class="listitem">
<a href="http://www.boost.org/libs/range/test/algorithm_example.cpp" target="_top">algorithm_example.cpp</a>
shows the replace example from the introduction.
</li>
<li class="listitem"><a href="http://www.boost.org/libs/range/test/iterator_range.cpp" target="_top">iterator_range.cpp</a></li>
<li class="listitem"><a href="http://www.boost.org/libs/range/test/sub_range.cpp" target="_top">sub_range.cpp</a></li>
<li class="listitem"><a href="http://www.boost.org/libs/range/test/iterator_pair.cpp" target="_top">iterator_pair.cpp</a></li>
<li class="listitem"><a href="http://www.boost.org/libs/range/test/reversible_range.cpp" target="_top">reversible_range.cpp</a></li>
<li class="listitem"><a href="http://www.boost.org/libs/range/test/std_container.cpp" target="_top">std_container.cpp</a></li>
<li class="listitem"><a href="http://www.boost.org/libs/range/test/array.cpp" target="_top">array.cpp</a></li>
<a href="http://www.boost.org/libs/range/test/algorithm_example.cpp" target="_top">algorithm_example.cpp</a>
shows the replace example from the introduction.
</li>
<li class="listitem">
<a href="http://www.boost.org/libs/range/test/iterator_range.cpp" target="_top">iterator_range.cpp</a>
</li>
<li class="listitem">
<a href="http://www.boost.org/libs/range/test/sub_range.cpp" target="_top">sub_range.cpp</a>
</li>
<li class="listitem">
<a href="http://www.boost.org/libs/range/test/iterator_pair.cpp" target="_top">iterator_pair.cpp</a>
</li>
<li class="listitem">
<a href="http://www.boost.org/libs/range/test/reversible_range.cpp" target="_top">reversible_range.cpp</a>
</li>
<li class="listitem">
<a href="http://www.boost.org/libs/range/test/std_container.cpp" target="_top">std_container.cpp</a>
</li>
<li class="listitem">
<a href="http://www.boost.org/libs/range/test/array.cpp" target="_top">array.cpp</a>
</li>
</ul></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
@ -56,7 +68,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="library_headers.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mfc_atl.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="headers/algorithm_ext.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="mfc_atl.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,8 +2,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>FAQ</title>
<link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="prev" href="portability.html" title="Portability">
@ -13,16 +13,16 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="portability.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="history_ack.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="portability.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="history_ack.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="FAQ">
<div class="section">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="range.faq"></a><a class="link" href="faq.html" title="FAQ">FAQ</a>
</h2></div></div></div>
@ -31,85 +31,47 @@
and <code class="computeroutput"><span class="identifier">range_const_iterator</span><span class="special">&lt;</span><span class="identifier">C</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
for <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span><span class="special">&lt;</span><span class="identifier">iterator</span><span class="special">,</span> <span class="identifier">iterator</span><span class="special">&gt;</span></code>?</strong></span></em></span>
</p>
<div class="blockquote"><blockquote class="blockquote">
<p>
</p>
<p>
In general it is not possible nor desirable to find a corresponding <code class="computeroutput"><span class="identifier">const_iterator</span></code>. When it is possible to
come up with one, the client might choose to construct a <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span><span class="special">&lt;</span><span class="identifier">const_iterator</span><span class="special">,</span><span class="identifier">const_iterator</span><span class="special">&gt;</span></code>
object.
</p>
<p>
</p>
</blockquote></div>
<div class="blockquote"><blockquote class="blockquote">
<p>
</p>
<p>
Note that an <a class="link" href="utilities/iterator_range.html" title="Class iterator_range"><code class="computeroutput"><span class="identifier">iterator_range</span></code></a> is somewhat more
convenient than a <code class="computeroutput"><span class="identifier">pair</span></code>
and that a <a class="link" href="utilities/sub_range.html" title="Class sub_range"><code class="computeroutput"><span class="identifier">sub_range</span></code></a>
does propagate const-ness.
</p>
<p>
</p>
</blockquote></div>
<div class="blockquote"><blockquote class="blockquote"><p>
In general it is not possible nor desirable to find a corresponding <code class="computeroutput"><span class="identifier">const_iterator</span></code>. When it is possible to
come up with one, the client might choose to construct a <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span><span class="special">&lt;</span><span class="identifier">const_iterator</span><span class="special">,</span><span class="identifier">const_iterator</span><span class="special">&gt;</span></code> object.
</p></blockquote></div>
<div class="blockquote"><blockquote class="blockquote"><p>
Note that an <a class="link" href="reference/utilities/iterator_range.html" title="Class iterator_range"><code class="computeroutput"><span class="identifier">iterator_range</span></code></a> is somewhat more
convenient than a <code class="computeroutput"><span class="identifier">pair</span></code> and
that a <a class="link" href="reference/utilities/sub_range.html" title="Class sub_range"><code class="computeroutput"><span class="identifier">sub_range</span></code></a> does propagate const-ness.
</p></blockquote></div>
<p>
2. <span class="emphasis"><em><span class="bold"><strong>Why is there not supplied more types or
more functions?</strong></span></em></span>
</p>
<div class="blockquote"><blockquote class="blockquote">
<p>
</p>
<p>
The library has been kept small because its current interface will serve
most purposes. If and when a genuine need arises for more functionality,
it can be implemented.
</p>
<p>
</p>
</blockquote></div>
<div class="blockquote"><blockquote class="blockquote"><p>
The library has been kept small because its current interface will serve
most purposes. If and when a genuine need arises for more functionality,
it can be implemented.
</p></blockquote></div>
<p>
3. <span class="emphasis"><em><span class="bold"><strong>How should I implement generic algorithms
for ranges?</strong></span></em></span>
</p>
<div class="blockquote"><blockquote class="blockquote">
<p>
</p>
<p>
One should always start with a generic algorithm that takes two iterators
(or more) as input. Then use Boost.Range to build handier versions on top
of the iterator based algorithm. Please notice that once the range version
of the algorithm is done, it makes sense not to expose the iterator version
in the public interface.
</p>
<p>
</p>
</blockquote></div>
<div class="blockquote"><blockquote class="blockquote"><p>
One should always start with a generic algorithm that takes two iterators
(or more) as input. Then use Boost.Range to build handier versions on top
of the iterator based algorithm. Please notice that once the range version
of the algorithm is done, it makes sense not to expose the iterator version
in the public interface.
</p></blockquote></div>
<p>
4. <span class="emphasis"><em><span class="bold"><strong>Why is there no Incrementable Range concept?</strong></span></em></span>
</p>
<div class="blockquote"><blockquote class="blockquote">
<p>
</p>
<p>
Even though we speak of incrementable iterators, it would not make much
sense for ranges; for example, we cannot determine the size and emptiness
of a range since we cannot even compare its iterators.
</p>
<p>
</p>
</blockquote></div>
<div class="blockquote"><blockquote class="blockquote">
<p>
</p>
<p>
Note also that incrementable iterators are derived from output iterators
and so there exist no output range.
</p>
<p>
</p>
</blockquote></div>
<div class="blockquote"><blockquote class="blockquote"><p>
Even though we speak of incrementable iterators, it would not make much sense
for ranges; for example, we cannot determine the size and emptiness of a
range since we cannot even compare its iterators.
</p></blockquote></div>
<div class="blockquote"><blockquote class="blockquote"><p>
Note also that incrementable iterators are derived from output iterators
and so there exist no output range.
</p></blockquote></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
@ -121,7 +83,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="portability.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="history_ack.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="portability.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="history_ack.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,49 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Library Headers</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="prev" href="style_guide.html" title="Terminology and style guidelines">
<link rel="next" href="headers/general.html" title="General">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="style_guide.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="headers/general.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="range.headers"></a><a class="link" href="headers.html" title="Library Headers">Library Headers</a>
</h2></div></div></div>
<div class="toc"><dl>
<dt><span class="section"><a href="headers/general.html">General</a></span></dt>
<dt><span class="section"><a href="headers/adaptors.html">Adaptors</a></span></dt>
<dt><span class="section"><a href="headers/algorithm.html">Algorithm</a></span></dt>
<dt><span class="section"><a href="headers/algorithm_ext.html">Algorithm Extensions</a></span></dt>
</dl></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="style_guide.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="headers/general.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,232 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Adaptors</title>
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../headers.html" title="Library Headers">
<link rel="prev" href="general.html" title="General">
<link rel="next" href="algorithm.html" title="Algorithm">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="general.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../headers.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="algorithm.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.headers.adaptors"></a><a class="link" href="adaptors.html" title="Adaptors">Adaptors</a>
</h3></div></div></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Header
</p>
</th>
<th>
<p>
Includes
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">adjacent_filtered</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/adjacent_filtered.html" title="adjacent_filtered">adjacent_filtered</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">copied</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/copied.html" title="copied">copied</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">filtered</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/filtered.html" title="filtered">filtered</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">indexed</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/indexed.html" title="indexed">indexed</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">indirected</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">.</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/indirected.html" title="indirected">indirected</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">map</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/map_keys.html" title="map_keys">map_keys</a>
<a class="link" href="../reference/adaptors/reference/map_values.html" title="map_values">map_values</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">replaced</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/replaced.html" title="replaced">replaced</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">replaced_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/replaced_if.html" title="replaced_if">replaced_if</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">reversed</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/reversed.html" title="reversed">reversed</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">sliced</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/sliced.html" title="sliced">sliced</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">strided</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/strided.html" title="strided">strided</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">tokenized</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/tokenized.html" title="tokenized">tokenized</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">transformed</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/transformed.html" title="transformed">transformed</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">uniqued</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/uniqued.html" title="uniqued">uniqued</a>
</p>
</td>
</tr>
</tbody>
</table></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="general.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../headers.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="algorithm.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,683 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Algorithm</title>
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../headers.html" title="Library Headers">
<link rel="prev" href="adaptors.html" title="Adaptors">
<link rel="next" href="algorithm_ext.html" title="Algorithm Extensions">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="adaptors.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../headers.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="algorithm_ext.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.headers.algorithm"></a><a class="link" href="algorithm.html" title="Algorithm">Algorithm</a>
</h3></div></div></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Header
</p>
</th>
<th>
<p>
Includes
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">adjacent_find</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/adjacent_find.html" title="adjacent_find">adjacent_find</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">binary_search</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/binary_search.html" title="binary_search">binary_search</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">copy</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/copy.html" title="copy">copy</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">copy_backward</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/copy_backward.html" title="copy_backward">copy_backward</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">count</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/count.html" title="count">count</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">count_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/count_if.html" title="count_if">count_if</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">equal</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/equal.html" title="equal">equal</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">equal_range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/equal_range.html" title="equal_range">equal_range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">fill</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/fill.html" title="fill">fill</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">fill_n</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/fill_n.html" title="fill_n">fill_n</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">find</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/find.html" title="find">find</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">find_end</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/find_end.html" title="find_end">find_end</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">find_first_of</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/find_first_of.html" title="find_first_of">find_first_of</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">find_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/find_if.html" title="find_if">find_if</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">for_each</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/for_each.html" title="for_each">for_each</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">generate</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/generate.html" title="generate">generate</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">heap_algorithm</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/heap/push_heap.html" title="push_heap">push_heap</a>
<a class="link" href="../reference/algorithms/heap/pop_heap.html" title="pop_heap">pop_heap</a>
<a class="link" href="../reference/algorithms/heap/make_heap.html" title="make_heap">make_heap</a>
<a class="link" href="../reference/algorithms/heap/sort_heap.html" title="sort_heap">sort_heap</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">inplace_merge</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/inplace_merge.html" title="inplace_merge">inplace_merge</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">lexicographical_compare</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/lexicographical_compare.html" title="lexicographical_compare">lexicographical_compare</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">lower_bound</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/lower_bound.html" title="lower_bound">lower_bound</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">max_element</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/max_element.html" title="max_element">max_element</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">merge</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/merge.html" title="merge">merge</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">min_element</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/min_element.html" title="min_element">min_element</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">mismatch</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/mismatch.html" title="mismatch">mismatch</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">nth_element</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/nth_element.html" title="nth_element">nth_element</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">partial_sort</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/partial_sort.html" title="partial_sort">partial_sort</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">partition</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/partition.html" title="partition">partition</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">permutation</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/permutation/next_permutation.html" title="next_permutation">next_permutation</a>
<a class="link" href="../reference/algorithms/permutation/prev_permutation.html" title="prev_permutation">prev_permutation</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">random_shuffle</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/random_shuffle.html" title="random_shuffle">random_shuffle</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">remove</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/remove.html" title="remove">remove</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">remove_copy</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/remove_copy.html" title="remove_copy">remove_copy</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">remove_copy_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/remove_copy_if.html" title="remove_copy_if">remove_copy_if</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">remove_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/remove_if.html" title="remove_if">remove_if</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">replace</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/replace.html" title="replace">replace</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">replace_copy</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/replace_copy.html" title="replace_copy">replace_copy</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">replace_copy_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/replace_copy_if.html" title="replace_copy_if">replace_copy_if</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">replace_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/replace_if.html" title="replace_if">replace_if</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">reverse</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/reverse.html" title="reverse">reverse</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">reverse_copy</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/reverse_copy.html" title="reverse_copy">reverse_copy</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">rotate</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/rotate.html" title="rotate">rotate</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">rotate_copy</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/rotate_copy.html" title="rotate_copy">rotate_copy</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">search</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/search.html" title="search">search</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">search_n</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/search_n.html" title="search_n">search_n</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">set_algorithm</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/set/includes.html" title="includes">includes</a>
<a class="link" href="../reference/algorithms/set/set_union.html" title="set_union">set_union</a>
<a class="link" href="../reference/algorithms/set/set_intersection.html" title="set_intersection">set_intersection</a>
<a class="link" href="../reference/algorithms/set/set_difference.html" title="set_difference">set_difference</a>
<a class="link" href="../reference/algorithms/set/set_symmetric_difference.html" title="set_symmetric_difference">set_symmetric_difference</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">sort</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/sort.html" title="sort">sort</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">stable_partition</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/stable_partition.html" title="stable_partition">stable_partition</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">swap_ranges</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/swap_ranges.html" title="swap_ranges">swap_ranges</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transform</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/transform.html" title="transform">transform</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">unique</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/unique.html" title="unique">unique</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">unique_copy</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/unique_copy.html" title="unique_copy">unique_copy</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">upper_bound</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/upper_bound.html" title="upper_bound">upper_bound</a>
</p>
</td>
</tr>
</tbody>
</table></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="adaptors.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../headers.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="algorithm_ext.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,171 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Algorithm Extensions</title>
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../headers.html" title="Library Headers">
<link rel="prev" href="algorithm.html" title="Algorithm">
<link rel="next" href="../examples.html" title="Examples">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="algorithm.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../headers.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../examples.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.headers.algorithm_ext"></a><a class="link" href="algorithm_ext.html" title="Algorithm Extensions">Algorithm Extensions</a>
</h3></div></div></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Header
</p>
</th>
<th>
<p>
Includes
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">copy_n</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/new/copy_n.html" title="copy_n">copy_n</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">erase</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/new/erase.html" title="erase">erase</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">for_each</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/new/for_each.html" title="for_each">for_each</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">insert</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/new/insert.html" title="insert">insert</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">iota</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/new/iota.html" title="iota">iota</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">is_sorted</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/new/is_sorted.html" title="is_sorted">is_sorted</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">overwrite</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/new/overwrite.html" title="overwrite">overwrite</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">push_back</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/new/push_back.html" title="push_back">push_back</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">push_front</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/new/push_front.html" title="push_front">push_front</a>
</p>
</td>
</tr>
</tbody>
</table></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="algorithm.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../headers.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../examples.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,551 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>General</title>
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../headers.html" title="Library Headers">
<link rel="prev" href="../headers.html" title="Library Headers">
<link rel="next" href="adaptors.html" title="Adaptors">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../headers.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../headers.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="adaptors.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.headers.general"></a><a class="link" href="general.html" title="General">General</a>
</h3></div></div></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Header
</p>
</th>
<th>
<p>
Includes
</p>
</th>
<th>
<p>
Related Concept
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
everything from Boost.Range version 1 (Boost versions 1.42 and
below). Includes the core range functions and metafunctinos, but
excludes Range Adaptors and Range Algorithms.
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">metafunctions</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
every metafunction
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">functions</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
every function
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">value_type</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/metafunctions.html" title="Metafunctions"><code class="computeroutput"><span class="identifier">range_value</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/single_pass_range.html" title="Single Pass Range">Single Pass Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">iterator</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/metafunctions.html" title="Metafunctions"><code class="computeroutput"><span class="identifier">range_iterator</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/single_pass_range.html" title="Single Pass Range">Single Pass Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">difference_type</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/metafunctions.html" title="Metafunctions"><code class="computeroutput"><span class="identifier">range_difference</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/forward_range.html" title="Forward Range">Forward Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">pointer</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/metafunctions.html" title="Metafunctions"><code class="computeroutput"><span class="identifier">range_pointer</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">category</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/metafunctions.html" title="Metafunctions"><code class="computeroutput"><span class="identifier">range_category</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">reverse_iterator</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/metafunctions.html" title="Metafunctions"><code class="computeroutput"><span class="identifier">range_reverse_iterator</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/bidirectional_range.html" title="Bidirectional Range">Bidirectional
Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">begin</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">begin</span></code></a> and <a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">const_begin</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/single_pass_range.html" title="Single Pass Range">Single Pass Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">end</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">end</span></code></a> and <a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">const_end</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/single_pass_range.html" title="Single Pass Range">Single Pass Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">empty</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">empty</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/single_pass_range.html" title="Single Pass Range">Single Pass Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">distance</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">distance</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/forward_range.html" title="Forward Range">Forward Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">size</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">size</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/random_access_range.html" title="Random Access Range">Random Access
Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">rbegin</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">rbegin</span></code></a> and <a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">const_rbegin</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/bidirectional_range.html" title="Bidirectional Range">Bidirectional
Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">rend</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">rend</span></code></a> and <a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">const_rend</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/bidirectional_range.html" title="Bidirectional Range">Bidirectional
Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">as_array</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">as_array</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">as_literal</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">as_literal</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">iterator_range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/utilities/iterator_range.html" title="Class iterator_range"><code class="computeroutput"><span class="identifier">iterator_range</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">sub_range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/utilities/sub_range.html" title="Class sub_range"><code class="computeroutput"><span class="identifier">sub_range</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">concepts</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts.html" title="Range Concepts">Range concepts</a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptors</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
every range adaptor
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
every range equivalent of an STL algorithm
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
every range algorithm that is an extension of the STL algorithms
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">counting_range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/ranges/counting_range.html" title="counting_range"><code class="computeroutput"><span class="identifier">counting_range</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">istream_range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/ranges/istream_range.html" title="istream_range"><code class="computeroutput"><span class="identifier">istream_range</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">irange</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/ranges/irange.html" title="irange"><code class="computeroutput"><span class="identifier">irange</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">join</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/utilities/join.html" title="Function join"><code class="computeroutput"><span class="identifier">join</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
</tbody>
</table></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../headers.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../headers.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="adaptors.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,8 +2,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>History and Acknowledgement</title>
<link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="prev" href="faq.html" title="FAQ">
@ -12,19 +12,24 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="faq.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a>
<a accesskey="p" href="faq.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a>
</div>
<div class="section" title="History and Acknowledgement">
<div class="section">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="range.history_ack"></a><a class="link" href="history_ack.html" title="History and Acknowledgement"> History and Acknowledgement</a>
<a name="range.history_ack"></a><a class="link" href="history_ack.html" title="History and Acknowledgement">History and Acknowledgement</a>
</h2></div></div></div>
<a name="range.history_ack.version_1___before_boost_1_43"></a><h4>
<a name="id786758"></a>
<a class="link" href="history_ack.html#range.history_ack.version_1___before_boost_1_43">Version 1 -
before Boost 1.43</a>
</h4>
<p>
The library have been under way for a long time. Dietmar K&#252;hl originally intended
to submit an <code class="computeroutput"><span class="identifier">array_traits</span></code> class
@ -55,24 +60,85 @@
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
Pavol Droba for help with documentation and implementation
</li>
Pavol Droba for help with documentation and implementation
</li>
<li class="listitem">
Pavel Vozenilek for help with porting the library
</li>
Pavel Vozenilek for help with porting the library
</li>
<li class="listitem">
Jonathan Turkanis and John Torjo for help with documentation
</li>
Jonathan Turkanis and John Torjo for help with documentation
</li>
<li class="listitem">
Hartmut Kaiser for being review manager
</li>
Hartmut Kaiser for being review manager
</li>
<li class="listitem">
Jonathan Turkanis for porting the lib (as far sa possible) to vc6 and vc7.
</li>
Jonathan Turkanis for porting the lib (as far sa possible) to vc6 and vc7.
</li>
</ul></div>
<p>
The concept checks and their documentation was provided by Daniel Walker.
</p>
<a name="range.history_ack.version_2___boost_1_43_and_beyond"></a><h4>
<a name="id786859"></a>
<a class="link" href="history_ack.html#range.history_ack.version_2___boost_1_43_and_beyond">Version
2 - Boost 1.43 and beyond</a>
</h4>
<p>
This version introduced Range Adaptors and Range Algorithms. This version 2
is the result of a merge of all of the RangeEx features into Boost.Range.
</p>
<p>
There were an enormous number of very significant contributors through all
stages of this library.
</p>
<p>
Prior to Boost.RangeEx there had been a number of Range library implementations,
these include library implementations by Eric Niebler, Adobe, Shunsuke Sogame
etc. Eric Niebler contributed the Range Adaptor idea which is arguably the
single biggest innovation in this library. Inevitably a great deal of commonality
evolved in each of these libraries, but a considerable amount of effort was
expended to learn from all of the divergent techniques.
</p>
<p>
The people in the following list all made contributions in the form of reviews,
user feedback, design suggestions, or defect detection:
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
Thorsten Ottosen: review management, design advice, documentation feedback
</li>
<li class="listitem">
Eric Niebler: early implementation, and review feedback
</li>
<li class="listitem">
Joel de Guzman: review
</li>
<li class="listitem">
Mathias Gaunard: review
</li>
<li class="listitem">
David Abrahams: implementation advice
</li>
<li class="listitem">
Robert Jones: defect reports, usage feedback
</li>
<li class="listitem">
Sean Parent: contributed experience from the Adobe range library
</li>
<li class="listitem">
Arno Schoedl: implementations, and review
</li>
<li class="listitem">
Rogier van Dalen: review
</li>
<li class="listitem">
Vincente Botet: review, documentation feedback
</li>
</ul></div>
<p>
Regardless of how I write this section it will never truly fairly capture the
gratitude that I feel to all who have contributed. Thank you everyone.
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
@ -84,7 +150,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="faq.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a>
<a accesskey="p" href="faq.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a>
</div>
</body>
</html>

View File

@ -2,8 +2,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Introduction</title>
<link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="prev" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
@ -13,16 +13,16 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../index.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="concepts.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="../index.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="concepts.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Introduction">
<div class="section">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="range.introduction"></a><a class="link" href="introduction.html" title="Introduction">Introduction</a>
</h2></div></div></div>
@ -59,83 +59,58 @@
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
simpler implementation and specification of generic range algorithms
</li>
simpler implementation and specification of generic range algorithms
</li>
<li class="listitem">
more flexible, compact and maintainable client code
</li>
more flexible, compact and maintainable client code
</li>
<li class="listitem">
safe use of built-in arrays (for legacy code; why else would you use built-in
arrays?)
</li>
safe use of built-in arrays (for legacy code; why else would you use built-in
arrays?)
</li>
</ul></div>
<p>
Below are given a small example (the complete example can be found <a href="http://www.boost.org/libs/range/test/algorithm_example.cpp" target="_top">here</a>
):
</p>
<a name="range.introduction.example___iterate_over_the_values_in_a_map"></a><h4>
<a name="id607240"></a>
<a class="link" href="introduction.html#range.introduction.example___iterate_over_the_values_in_a_map">Example
- Iterate over the values in a map</a>
</h4>
<p>
</p>
<pre class="programlisting"><span class="comment">//
</span><span class="comment">// example: extracting bounds in a generic algorithm
</span><span class="comment">//
</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span> <span class="identifier">ForwardReadableRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T</span> <span class="special">&gt;</span>
<span class="keyword">inline</span> <span class="keyword">typename</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">range_iterator</span><span class="special">&lt;</span> <span class="identifier">ForwardReadableRange</span> <span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find</span><span class="special">(</span> <span class="identifier">ForwardReadableRange</span><span class="special">&amp;</span> <span class="identifier">c</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">value</span> <span class="special">)</span>
<span class="special">{</span>
<span class="keyword">return</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">find</span><span class="special">(</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span> <span class="identifier">c</span> <span class="special">),</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">end</span><span class="special">(</span> <span class="identifier">c</span> <span class="special">),</span> <span class="identifier">value</span> <span class="special">);</span>
<span class="special">}</span>
<span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span> <span class="identifier">ForwardReadableRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T</span> <span class="special">&gt;</span>
<span class="keyword">inline</span> <span class="keyword">typename</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">range_iterator</span><span class="special">&lt;</span> <span class="keyword">const</span> <span class="identifier">ForwardReadableRange</span> <span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">find</span><span class="special">(</span> <span class="keyword">const</span> <span class="identifier">ForwardReadableRange</span><span class="special">&amp;</span> <span class="identifier">c</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">value</span> <span class="special">)</span>
<span class="special">{</span>
<span class="keyword">return</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">find</span><span class="special">(</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span> <span class="identifier">c</span> <span class="special">),</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">end</span><span class="special">(</span> <span class="identifier">c</span> <span class="special">),</span> <span class="identifier">value</span> <span class="special">);</span>
<span class="special">}</span>
<span class="comment">//
</span><span class="comment">// replace first value and return its index
</span><span class="comment">//
</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span> <span class="identifier">ForwardReadableWriteableRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T</span> <span class="special">&gt;</span>
<span class="keyword">inline</span> <span class="keyword">typename</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">range_size</span><span class="special">&lt;</span> <span class="identifier">ForwardReadableWriteableRange</span> <span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">my_generic_replace</span><span class="special">(</span> <span class="identifier">ForwardReadableWriteableRange</span><span class="special">&amp;</span> <span class="identifier">c</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">value</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">replacement</span> <span class="special">)</span>
<span class="special">{</span>
<span class="keyword">typename</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">range_iterator</span><span class="special">&lt;</span> <span class="identifier">ForwardReadableWriteableRange</span> <span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">found</span> <span class="special">=</span> <span class="identifier">find</span><span class="special">(</span> <span class="identifier">c</span><span class="special">,</span> <span class="identifier">value</span> <span class="special">);</span>
<span class="keyword">if</span><span class="special">(</span> <span class="identifier">found</span> <span class="special">!=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">end</span><span class="special">(</span> <span class="identifier">c</span> <span class="special">)</span> <span class="special">)</span>
<span class="special">*</span><span class="identifier">found</span> <span class="special">=</span> <span class="identifier">replacement</span><span class="special">;</span>
<span class="keyword">return</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">distance</span><span class="special">(</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span> <span class="identifier">c</span> <span class="special">),</span> <span class="identifier">found</span> <span class="special">);</span>
<span class="special">}</span>
<span class="comment">//
</span><span class="comment">// usage
</span><span class="comment">//
</span><span class="keyword">const</span> <span class="keyword">int</span> <span class="identifier">N</span> <span class="special">=</span> <span class="number">5</span><span class="special">;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">my_vector</span><span class="special">;</span>
<span class="keyword">int</span> <span class="identifier">values</span><span class="special">[]</span> <span class="special">=</span> <span class="special">{</span> <span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">,</span><span class="number">4</span><span class="special">,</span><span class="number">5</span><span class="special">,</span><span class="number">6</span><span class="special">,</span><span class="number">7</span><span class="special">,</span><span class="number">8</span><span class="special">,</span><span class="number">9</span> <span class="special">};</span>
<span class="identifier">my_vector</span><span class="special">.</span><span class="identifier">assign</span><span class="special">(</span> <span class="identifier">values</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">end</span><span class="special">(</span> <span class="identifier">values</span> <span class="special">)</span> <span class="special">);</span>
<span class="keyword">typedef</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;::</span><span class="identifier">iterator</span> <span class="identifier">iterator</span><span class="special">;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span><span class="special">&lt;</span><span class="identifier">iterator</span><span class="special">,</span><span class="identifier">iterator</span><span class="special">&gt;</span> <span class="identifier">my_view</span><span class="special">(</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span> <span class="identifier">my_vector</span> <span class="special">),</span>
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span> <span class="identifier">my_vector</span> <span class="special">)</span> <span class="special">+</span> <span class="identifier">N</span> <span class="special">);</span>
<span class="keyword">char</span> <span class="identifier">str_val</span><span class="special">[]</span> <span class="special">=</span> <span class="string">"a string"</span><span class="special">;</span>
<span class="keyword">char</span><span class="special">*</span> <span class="identifier">str</span> <span class="special">=</span> <span class="identifier">str_val</span><span class="special">;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">my_generic_replace</span><span class="special">(</span> <span class="identifier">my_vector</span><span class="special">,</span> <span class="number">4</span><span class="special">,</span> <span class="number">2</span> <span class="special">);</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">my_generic_replace</span><span class="special">(</span> <span class="identifier">my_view</span><span class="special">,</span> <span class="number">4</span><span class="special">,</span> <span class="number">2</span> <span class="special">);</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">my_generic_replace</span><span class="special">(</span> <span class="identifier">str</span><span class="special">,</span> <span class="char">'a'</span><span class="special">,</span> <span class="char">'b'</span> <span class="special">);</span>
<span class="comment">// prints '3', '5' and '0'
</span></pre>
<pre class="programlisting"><span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">;</span>
<span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">;</span>
<span class="identifier">for_each</span><span class="special">(</span> <span class="identifier">my_map</span> <span class="special">|</span> <span class="identifier">map_values</span><span class="special">,</span> <span class="identifier">fn</span> <span class="special">);</span>
</pre>
<p>
</p>
<a name="range.introduction.example___iterate_over_the_keys_in_a_map"></a><h4>
<a name="id607360"></a>
<a class="link" href="introduction.html#range.introduction.example___iterate_over_the_keys_in_a_map">Example
- Iterate over the keys in a map</a>
</h4>
<p>
</p>
<pre class="programlisting"><span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">;</span>
<span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">;</span>
<span class="identifier">for_each</span><span class="special">(</span> <span class="identifier">my_map</span> <span class="special">|</span> <span class="identifier">map_keys</span><span class="special">,</span> <span class="identifier">fn</span> <span class="special">);</span>
</pre>
<p>
</p>
<a name="range.introduction.example___push_the_even_values_from_a_map_in_reverse_order_into_the_container__code__phrase_role__identifier__target__phrase___code_"></a><h4>
<a name="id648314"></a>
<a class="link" href="introduction.html#range.introduction.example___push_the_even_values_from_a_map_in_reverse_order_into_the_container__code__phrase_role__identifier__target__phrase___code_">Example
- Push the even values from a map in reverse order into the container <code class="computeroutput"><span class="identifier">target</span></code></a>
</h4>
<p>
</p>
<pre class="programlisting"><span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">;</span>
<span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">;</span>
<span class="comment">// Assume that is_even is a predicate that has been implemented elsewhere...
</span><span class="identifier">push_back</span><span class="special">(</span><span class="identifier">target</span><span class="special">,</span> <span class="identifier">my_map</span> <span class="special">|</span> <span class="identifier">map_values</span> <span class="special">|</span> <span class="identifier">filtered</span><span class="special">(</span><span class="identifier">is_even</span><span class="special">())</span> <span class="special">|</span> <span class="identifier">reversed</span><span class="special">);</span>
</pre>
<p>
By using the free-standing functions and <a href="../../../../../libs/mpl/doc/refmanual/metafunction.html" target="_top">metafunctions</a>,
the code automatically works for all the types supported by this library; now
and in the future. Notice that we have to provide two versions of <code class="computeroutput"><span class="identifier">find</span><span class="special">()</span></code> since
we cannot forward a non-const rvalue with reference arguments (see this article
about <a href="http://std.dkuug.dk/jtc1/sc22/wg21/docs/papers/2002/n1385.htm" target="_top">The
Forwarding Problem</a> ).
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
@ -148,7 +123,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../index.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="concepts.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="../index.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="concepts.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,419 +2,37 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Library Headers</title>
<link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="prev" href="style_guide.html" title="Terminology and style guidelines">
<link rel="next" href="examples.html" title="Examples">
<link rel="next" href="library_headers/general.html" title="General">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="style_guide.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="examples.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="style_guide.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="library_headers/general.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Library Headers">
<div class="section">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="range.library_headers"></a><a class="link" href="library_headers.html" title="Library Headers">Library Headers</a>
</h2></div></div></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Header
</p>
</th>
<th>
<p>
Includes
</p>
</th>
<th>
<p>
Related Concept
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
everything from Boost.Range version 1 (Boost versions 1.42 and below).
Includes the core range functions and metafunctinos, but excludes
Range Adaptors and Range Algorithms.
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">metafunctions</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
every metafunction
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">functions</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
every function
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">value_type</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="reference/semantics/metafunctions.html" title="Metafunctions"><code class="computeroutput"><span class="identifier">range_value</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="concepts/single_pass_range.html" title="Single Pass Range">Single Pass Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">iterator</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="reference/semantics/metafunctions.html" title="Metafunctions"><code class="computeroutput"><span class="identifier">range_iterator</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="concepts/single_pass_range.html" title="Single Pass Range">Single Pass Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">difference_type</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="reference/semantics/metafunctions.html" title="Metafunctions"><code class="computeroutput"><span class="identifier">range_difference</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="concepts/forward_range.html" title="Forward Range">Forward Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">pointer</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="reference/semantics/metafunctions.html" title="Metafunctions"><code class="computeroutput"><span class="identifier">range_pointer</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">category</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="reference/semantics/metafunctions.html" title="Metafunctions"><code class="computeroutput"><span class="identifier">range_category</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">reverse_iterator</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="reference/semantics/metafunctions.html" title="Metafunctions"><code class="computeroutput"><span class="identifier">range_reverse_iterator</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="concepts/bidirectional_range.html" title="Bidirectional Range">Bidirectional
Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">begin</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="reference/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">begin</span></code></a> and <a class="link" href="reference/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">const_begin</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="concepts/single_pass_range.html" title="Single Pass Range">Single Pass Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">end</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="reference/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">end</span></code></a> and <a class="link" href="reference/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">const_end</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="concepts/single_pass_range.html" title="Single Pass Range">Single Pass Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">empty</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="reference/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">empty</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="concepts/single_pass_range.html" title="Single Pass Range">Single Pass Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">distance</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="reference/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">distance</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="concepts/forward_range.html" title="Forward Range">Forward Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">size</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="reference/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">size</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="concepts/random_access_range.html" title="Random Access Range">Random Access
Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">rbegin</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="reference/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">rbegin</span></code></a> and <a class="link" href="reference/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">const_rbegin</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="concepts/bidirectional_range.html" title="Bidirectional Range">Bidirectional
Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">rend</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="reference/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">rend</span></code></a> and <a class="link" href="reference/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">const_rend</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="concepts/bidirectional_range.html" title="Bidirectional Range">Bidirectional
Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">as_array</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="reference/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">as_array</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">as_literal</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="reference/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">as_literal</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">iterator_range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="utilities/iterator_range.html" title="Class iterator_range"><code class="computeroutput"><span class="identifier">iterator_range</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">sub_range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="utilities/sub_range.html" title="Class sub_range"><code class="computeroutput"><span class="identifier">sub_range</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">concepts</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="concepts.html" title="Range Concepts">Range concepts</a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
</tbody>
</table></div>
<div class="toc"><dl>
<dt><span class="section"><a href="library_headers/general.html">General</a></span></dt>
<dt><span class="section"><a href="library_headers/adaptors.html">Adaptors</a></span></dt>
<dt><span class="section"><a href="library_headers/algorithm.html">Algorithm</a></span></dt>
<dt><span class="section"><a href="library_headers/algorithm_extensions.html">Algorithm
Extensions</a></span></dt>
</dl></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
@ -426,7 +44,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="style_guide.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="examples.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="style_guide.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="library_headers/general.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,232 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Adaptors</title>
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../library_headers.html" title="Library Headers">
<link rel="prev" href="general.html" title="General">
<link rel="next" href="algorithm.html" title="Algorithm">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="general.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../library_headers.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="algorithm.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.library_headers.adaptors"></a><a class="link" href="adaptors.html" title="Adaptors">Adaptors</a>
</h3></div></div></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Header
</p>
</th>
<th>
<p>
Includes
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">adjacent_filtered</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/adjacent_filtered.html" title="adjacent_filtered">adjacent_filtered</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">copied</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/copied.html" title="copied">copied</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">filtered</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/filtered.html" title="filtered">filtered</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">indexed</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/indexed.html" title="indexed">indexed</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">indirected</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">.</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/indirected.html" title="indirected">indirected</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">map</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/map_keys.html" title="map_keys">map_keys</a>
<a class="link" href="../reference/adaptors/reference/map_values.html" title="map_values">map_values</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">replaced</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/replaced.html" title="replaced">replaced</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">replaced_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/replaced_if.html" title="replaced_if">replaced_if</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">reversed</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/reversed.html" title="reversed">reversed</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">sliced</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/sliced.html" title="sliced">sliced</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">strided</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/strided.html" title="strided">strided</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">tokenized</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/tokenized.html" title="tokenized">tokenized</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">transformed</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/transformed.html" title="transformed">transformed</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">uniqued</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/adaptors/reference/uniqued.html" title="uniqued">uniqued</a>
</p>
</td>
</tr>
</tbody>
</table></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="general.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../library_headers.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="algorithm.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,683 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Algorithm</title>
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../library_headers.html" title="Library Headers">
<link rel="prev" href="adaptors.html" title="Adaptors">
<link rel="next" href="algorithm_extensions.html" title="Algorithm Extensions">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="adaptors.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../library_headers.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="algorithm_extensions.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.library_headers.algorithm"></a><a class="link" href="algorithm.html" title="Algorithm">Algorithm</a>
</h3></div></div></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Header
</p>
</th>
<th>
<p>
Includes
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">adjacent_find</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/adjacent_find.html" title="adjacent_find">adjacent_find</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">binary_search</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/binary_search.html" title="binary_search">binary_search</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">copy</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/copy.html" title="copy">copy</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">copy_backward</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/copy_backward.html" title="copy_backward">copy_backward</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">count</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/count.html" title="count">count</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">count_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/count_if.html" title="count_if">count_if</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">equal</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/equal.html" title="equal">equal</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">equal_range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/equal_range.html" title="equal_range">equal_range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">fill</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/fill.html" title="fill">fill</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">fill_n</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/fill_n.html" title="fill_n">fill_n</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">find</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/find.html" title="find">find</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">find_end</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/find_end.html" title="find_end">find_end</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">find_first_of</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/find_first_of.html" title="find_first_of">find_first_of</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">find_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/find_if.html" title="find_if">find_if</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">for_each</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/for_each.html" title="for_each">for_each</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">generate</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/generate.html" title="generate">generate</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">heap_algorithm</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/heap/push_heap.html" title="push_heap">push_heap</a>
<a class="link" href="../reference/algorithms/heap/pop_heap.html" title="pop_heap">pop_heap</a>
<a class="link" href="../reference/algorithms/heap/make_heap.html" title="make_heap">make_heap</a>
<a class="link" href="../reference/algorithms/heap/sort_heap.html" title="sort_heap">sort_heap</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">inplace_merge</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/inplace_merge.html" title="inplace_merge">inplace_merge</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">lexicographical_compare</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/lexicographical_compare.html" title="lexicographical_compare">lexicographical_compare</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">lower_bound</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/lower_bound.html" title="lower_bound">lower_bound</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">max_element</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/max_element.html" title="max_element">max_element</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">merge</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/merge.html" title="merge">merge</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">min_element</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/min_element.html" title="min_element">min_element</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">mismatch</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/mismatch.html" title="mismatch">mismatch</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">nth_element</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/nth_element.html" title="nth_element">nth_element</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">partial_sort</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/partial_sort.html" title="partial_sort">partial_sort</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">partition</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/partition.html" title="partition">partition</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">permutation</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/permutation/next_permutation.html" title="next_permutation">next_permutation</a>
<a class="link" href="../reference/algorithms/permutation/prev_permutation.html" title="prev_permutation">prev_permutation</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">random_shuffle</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/random_shuffle.html" title="random_shuffle">random_shuffle</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">remove</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/remove.html" title="remove">remove</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">remove_copy</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/remove_copy.html" title="remove_copy">remove_copy</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">remove_copy_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/remove_copy_if.html" title="remove_copy_if">remove_copy_if</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">remove_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/remove_if.html" title="remove_if">remove_if</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">replace</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/replace.html" title="replace">replace</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">replace_copy</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/replace_copy.html" title="replace_copy">replace_copy</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">replace_copy_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/replace_copy_if.html" title="replace_copy_if">replace_copy_if</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">replace_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/replace_if.html" title="replace_if">replace_if</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">reverse</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/reverse.html" title="reverse">reverse</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">reverse_copy</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/reverse_copy.html" title="reverse_copy">reverse_copy</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">rotate</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/rotate.html" title="rotate">rotate</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">rotate_copy</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/rotate_copy.html" title="rotate_copy">rotate_copy</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">search</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/search.html" title="search">search</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">search_n</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/search_n.html" title="search_n">search_n</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">set_algorithm</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/set/includes.html" title="includes">includes</a>
<a class="link" href="../reference/algorithms/set/set_union.html" title="set_union">set_union</a>
<a class="link" href="../reference/algorithms/set/set_intersection.html" title="set_intersection">set_intersection</a>
<a class="link" href="../reference/algorithms/set/set_difference.html" title="set_difference">set_difference</a>
<a class="link" href="../reference/algorithms/set/set_symmetric_difference.html" title="set_symmetric_difference">set_symmetric_difference</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">sort</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/sort.html" title="sort">sort</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">stable_partition</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/stable_partition.html" title="stable_partition">stable_partition</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">swap_ranges</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/swap_ranges.html" title="swap_ranges">swap_ranges</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transform</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/transform.html" title="transform">transform</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">unique</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/unique.html" title="unique">unique</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">unique_copy</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/mutating/unique_copy.html" title="unique_copy">unique_copy</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">upper_bound</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/non_mutating/upper_bound.html" title="upper_bound">upper_bound</a>
</p>
</td>
</tr>
</tbody>
</table></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="adaptors.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../library_headers.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="algorithm_extensions.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,172 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Algorithm Extensions</title>
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../library_headers.html" title="Library Headers">
<link rel="prev" href="algorithm.html" title="Algorithm">
<link rel="next" href="../examples.html" title="Examples">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="algorithm.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../library_headers.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../examples.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.library_headers.algorithm_extensions"></a><a class="link" href="algorithm_extensions.html" title="Algorithm Extensions">Algorithm
Extensions</a>
</h3></div></div></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Header
</p>
</th>
<th>
<p>
Includes
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">copy_n</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/new/copy_n.html" title="copy_n">copy_n</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">erase</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/new/erase.html" title="erase">erase</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">for_each</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/new/for_each.html" title="for_each">for_each</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">insert</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/new/insert.html" title="insert">insert</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">iota</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/new/iota.html" title="iota">iota</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">is_sorted</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/new/is_sorted.html" title="is_sorted">is_sorted</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">overwrite</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/new/overwrite.html" title="overwrite">overwrite</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">push_back</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/new/push_back.html" title="push_back">push_back</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">/</span><span class="identifier">push_front</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/algorithms/new/push_front.html" title="push_front">push_front</a>
</p>
</td>
</tr>
</tbody>
</table></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="algorithm.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../library_headers.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../examples.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,551 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>General</title>
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../library_headers.html" title="Library Headers">
<link rel="prev" href="../library_headers.html" title="Library Headers">
<link rel="next" href="adaptors.html" title="Adaptors">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../library_headers.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../library_headers.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="adaptors.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.library_headers.general"></a><a class="link" href="general.html" title="General">General</a>
</h3></div></div></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Header
</p>
</th>
<th>
<p>
Includes
</p>
</th>
<th>
<p>
Related Concept
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
everything from Boost.Range version 1 (Boost versions 1.42 and
below). Includes the core range functions and metafunctinos, but
excludes Range Adaptors and Range Algorithms.
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">metafunctions</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
every metafunction
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">functions</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
every function
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">value_type</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/metafunctions.html" title="Metafunctions"><code class="computeroutput"><span class="identifier">range_value</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/single_pass_range.html" title="Single Pass Range">Single Pass Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">iterator</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/metafunctions.html" title="Metafunctions"><code class="computeroutput"><span class="identifier">range_iterator</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/single_pass_range.html" title="Single Pass Range">Single Pass Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">difference_type</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/metafunctions.html" title="Metafunctions"><code class="computeroutput"><span class="identifier">range_difference</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/forward_range.html" title="Forward Range">Forward Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">pointer</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/metafunctions.html" title="Metafunctions"><code class="computeroutput"><span class="identifier">range_pointer</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">category</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/metafunctions.html" title="Metafunctions"><code class="computeroutput"><span class="identifier">range_category</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">reverse_iterator</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/metafunctions.html" title="Metafunctions"><code class="computeroutput"><span class="identifier">range_reverse_iterator</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/bidirectional_range.html" title="Bidirectional Range">Bidirectional
Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">begin</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">begin</span></code></a> and <a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">const_begin</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/single_pass_range.html" title="Single Pass Range">Single Pass Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">end</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">end</span></code></a> and <a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">const_end</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/single_pass_range.html" title="Single Pass Range">Single Pass Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">empty</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">empty</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/single_pass_range.html" title="Single Pass Range">Single Pass Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">distance</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">distance</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/forward_range.html" title="Forward Range">Forward Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">size</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">size</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/random_access_range.html" title="Random Access Range">Random Access
Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">rbegin</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">rbegin</span></code></a> and <a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">const_rbegin</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/bidirectional_range.html" title="Bidirectional Range">Bidirectional
Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">rend</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">rend</span></code></a> and <a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">const_rend</span></code></a>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts/bidirectional_range.html" title="Bidirectional Range">Bidirectional
Range</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">as_array</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">as_array</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">as_literal</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">as_literal</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">iterator_range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/utilities/iterator_range.html" title="Class iterator_range"><code class="computeroutput"><span class="identifier">iterator_range</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">sub_range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/utilities/sub_range.html" title="Class sub_range"><code class="computeroutput"><span class="identifier">sub_range</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">concepts</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../concepts.html" title="Range Concepts">Range concepts</a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptors</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
every range adaptor
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
every range equivalent of an STL algorithm
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm_ext</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
every range algorithm that is an extension of the STL algorithms
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">counting_range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/ranges/counting_range.html" title="counting_range"><code class="computeroutput"><span class="identifier">counting_range</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">istream_range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/ranges/istream_range.html" title="istream_range"><code class="computeroutput"><span class="identifier">istream_range</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">irange</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/ranges/irange.html" title="irange"><code class="computeroutput"><span class="identifier">irange</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">join</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../reference/utilities/join.html" title="Function join"><code class="computeroutput"><span class="identifier">join</span></code></a>
</p>
</td>
<td>
<p>
-
</p>
</td>
</tr>
</tbody>
</table></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../library_headers.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../library_headers.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="adaptors.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,8 +2,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>MFC/ATL (courtesy of Shunsuke Sogame)</title>
<link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="prev" href="examples.html" title="Examples">
@ -13,28 +13,28 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="examples.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mfc_atl/requirements.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="examples.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="mfc_atl/requirements.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="MFC/ATL (courtesy of Shunsuke Sogame)">
<div class="section">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="range.mfc_atl"></a><a class="link" href="mfc_atl.html" title="MFC/ATL (courtesy of Shunsuke Sogame)"> MFC/ATL (courtesy of Shunsuke Sogame)</a>
<a name="range.mfc_atl"></a><a class="link" href="mfc_atl.html" title="MFC/ATL (courtesy of Shunsuke Sogame)">MFC/ATL (courtesy of Shunsuke Sogame)</a>
</h2></div></div></div>
<div class="toc"><dl>
<dt><span class="section"><a href="mfc_atl/requirements.html"> Requirements</a></span></dt>
<dt><span class="section"><a href="mfc_atl/mfc_ranges.html"> MFC Ranges</a></span></dt>
<dt><span class="section"><a href="mfc_atl/atl_ranges.html"> ATL Ranges</a></span></dt>
<dt><span class="section"><a href="mfc_atl/const_ranges.html"> const Ranges</a></span></dt>
<dt><span class="section"><a href="mfc_atl/references.html"> References</a></span></dt>
<dt><span class="section"><a href="mfc_atl/requirements.html">Requirements</a></span></dt>
<dt><span class="section"><a href="mfc_atl/mfc_ranges.html">MFC Ranges</a></span></dt>
<dt><span class="section"><a href="mfc_atl/atl_ranges.html">ATL Ranges</a></span></dt>
<dt><span class="section"><a href="mfc_atl/const_ranges.html">const Ranges</a></span></dt>
<dt><span class="section"><a href="mfc_atl/references.html">References</a></span></dt>
</dl></div>
<a name="range.mfc_atl.introduction"></a><h5>
<a name="id3128780"></a>
<a name="id780286"></a>
<a class="link" href="mfc_atl.html#range.mfc_atl.introduction">Introduction</a>
</h5>
<p>
@ -100,7 +100,7 @@
</tbody>
</table></div>
<a name="range.mfc_atl.overview"></a><h5>
<a name="id3128918"></a>
<a name="id780420"></a>
<a class="link" href="mfc_atl.html#range.mfc_atl.overview">Overview</a>
</h5>
<p>
@ -135,7 +135,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="examples.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mfc_atl/requirements.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="examples.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="mfc_atl/requirements.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,8 +2,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>ATL Ranges</title>
<link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../mfc_atl.html" title="MFC/ATL (courtesy of Shunsuke Sogame)">
<link rel="prev" href="mfc_ranges.html" title="MFC Ranges">
@ -13,18 +13,18 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="mfc_ranges.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mfc_atl.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="const_ranges.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="mfc_ranges.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mfc_atl.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="const_ranges.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="ATL Ranges">
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.mfc_atl.atl_ranges"></a><a class="link" href="atl_ranges.html" title="ATL Ranges"> ATL Ranges</a>
<a name="range.mfc_atl.atl_ranges"></a><a class="link" href="atl_ranges.html" title="ATL Ranges">ATL Ranges</a>
</h3></div></div></div>
<p>
If the <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">atl</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
@ -368,7 +368,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="mfc_ranges.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mfc_atl.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="const_ranges.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="mfc_ranges.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mfc_atl.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="const_ranges.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,8 +2,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>const Ranges</title>
<link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../mfc_atl.html" title="MFC/ATL (courtesy of Shunsuke Sogame)">
<link rel="prev" href="atl_ranges.html" title="ATL Ranges">
@ -13,18 +13,18 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="atl_ranges.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mfc_atl.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="references.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="atl_ranges.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mfc_atl.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="references.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="const Ranges">
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.mfc_atl.const_ranges"></a><a class="link" href="const_ranges.html" title="const Ranges"> const Ranges</a>
<a name="range.mfc_atl.const_ranges"></a><a class="link" href="const_ranges.html" title="const Ranges">const Ranges</a>
</h3></div></div></div>
<p>
<code class="computeroutput"><span class="identifier">range_reference</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">Range</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
@ -119,7 +119,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="atl_ranges.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mfc_atl.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="references.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="atl_ranges.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mfc_atl.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="references.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,8 +2,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>MFC Ranges</title>
<link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../mfc_atl.html" title="MFC/ATL (courtesy of Shunsuke Sogame)">
<link rel="prev" href="requirements.html" title="Requirements">
@ -13,18 +13,18 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="requirements.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mfc_atl.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="atl_ranges.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="requirements.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mfc_atl.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="atl_ranges.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="MFC Ranges">
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.mfc_atl.mfc_ranges"></a><a class="link" href="mfc_ranges.html" title="MFC Ranges"> MFC Ranges</a>
<a name="range.mfc_atl.mfc_ranges"></a><a class="link" href="mfc_ranges.html" title="MFC Ranges">MFC Ranges</a>
</h3></div></div></div>
<p>
If the <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">mfc</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
@ -474,7 +474,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="requirements.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mfc_atl.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="atl_ranges.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="requirements.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mfc_atl.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="atl_ranges.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,8 +2,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>References</title>
<link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../mfc_atl.html" title="MFC/ATL (courtesy of Shunsuke Sogame)">
<link rel="prev" href="const_ranges.html" title="const Ranges">
@ -13,25 +13,31 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="const_ranges.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mfc_atl.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../upgrade.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="const_ranges.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mfc_atl.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../upgrade.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="References">
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.mfc_atl.references"></a><a class="link" href="references.html" title="References"> References</a>
<a name="range.mfc_atl.references"></a><a class="link" href="references.html" title="References">References</a>
</h3></div></div></div>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><a class="link" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">Boost.Range</a></li>
<li class="listitem"><a href="http://msdn.microsoft.com/en-us/library/942860sh.aspx" target="_top">MFC
Collection Classes</a></li>
<li class="listitem"><a href="http://msdn.microsoft.com/en-us/library/15e672bd.aspx" target="_top">ATL
Collection Classes</a></li>
<li class="listitem">
<a class="link" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">Boost.Range</a>
</li>
<li class="listitem">
<a href="http://msdn.microsoft.com/en-us/library/942860sh.aspx" target="_top">MFC
Collection Classes</a>
</li>
<li class="listitem">
<a href="http://msdn.microsoft.com/en-us/library/15e672bd.aspx" target="_top">ATL
Collection Classes</a>
</li>
</ol></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
@ -44,7 +50,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="const_ranges.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mfc_atl.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../upgrade.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="const_ranges.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mfc_atl.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../upgrade.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,8 +2,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Requirements</title>
<link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../mfc_atl.html" title="MFC/ATL (courtesy of Shunsuke Sogame)">
<link rel="prev" href="../mfc_atl.html" title="MFC/ATL (courtesy of Shunsuke Sogame)">
@ -13,26 +13,26 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../mfc_atl.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mfc_atl.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mfc_ranges.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="../mfc_atl.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mfc_atl.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="mfc_ranges.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Requirements">
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.mfc_atl.requirements"></a><a class="link" href="requirements.html" title="Requirements"> Requirements</a>
<a name="range.mfc_atl.requirements"></a><a class="link" href="requirements.html" title="Requirements">Requirements</a>
</h3></div></div></div>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
Boost C++ Libraries Version 1.34.0 or later (no compilation required)
</li>
Boost C++ Libraries Version 1.34.0 or later (no compilation required)
</li>
<li class="listitem">
Visual C++ 7.1 or later (for MFC and ATL)
</li>
Visual C++ 7.1 or later (for MFC and ATL)
</li>
</ul></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
@ -45,7 +45,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../mfc_atl.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mfc_atl.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mfc_ranges.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="../mfc_atl.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mfc_atl.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="mfc_ranges.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,8 +2,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Portability</title>
<link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="prev" href="upgrade/upgrade_from_1_34.html" title="Upgrade from version 1.34">
@ -13,16 +13,16 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="upgrade/upgrade_from_1_34.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="faq.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="upgrade/upgrade_from_1_34.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="faq.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Portability">
<div class="section">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="range.portability"></a><a class="link" href="portability.html" title="Portability">Portability</a>
</h2></div></div></div>
@ -38,7 +38,7 @@
</p>
<p>
Notice also that some compilers cannot do function template ordering properly.
In that case one must rely of <a class="link" href="reference/semantics/metafunctions.html" title="Metafunctions"><code class="computeroutput"><span class="identifier">range_iterator</span></code></a> and a single function
In that case one must rely of <a class="link" href="reference/concept_implementation/semantics/metafunctions.html" title="Metafunctions"><code class="computeroutput"><span class="identifier">range_iterator</span></code></a> and a single function
definition instead of overloaded versions for const and non-const arguments.
So if one cares about old compilers, one should not pass rvalues to the functions.
</p>
@ -47,28 +47,32 @@
</p>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
do not use built-in arrays,
</li>
do not use built-in arrays,
</li>
<li class="listitem">
do not pass rvalues to <a class="link" href="reference/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">begin</span></code></a><code class="computeroutput"><span class="special">()</span></code>,
<a class="link" href="reference/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">end</span></code></a><code class="computeroutput"><span class="special">()</span></code> and <a class="link" href="utilities/iterator_range.html" title="Class iterator_range"><code class="computeroutput"><span class="identifier">iterator_range</span></code></a> Range constructors
and assignment operators,
</li>
do not pass rvalues to <a class="link" href="reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">begin</span></code></a><code class="computeroutput"><span class="special">()</span></code>,
<a class="link" href="reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">end</span></code></a><code class="computeroutput"><span class="special">()</span></code>
and <a class="link" href="reference/utilities/iterator_range.html" title="Class iterator_range"><code class="computeroutput"><span class="identifier">iterator_range</span></code></a> Range constructors
and assignment operators,
</li>
<li class="listitem">
use <a class="link" href="reference/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">const_begin</span></code></a><code class="computeroutput"><span class="special">()</span></code> and <a class="link" href="reference/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">const_end</span></code></a><code class="computeroutput"><span class="special">()</span></code>
whenever your code by intention is read-only; this will also solve most rvalue
problems,
</li>
use <a class="link" href="reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">const_begin</span></code></a><code class="computeroutput"><span class="special">()</span></code>
and <a class="link" href="reference/concept_implementation/semantics/functions.html" title="Functions"><code class="computeroutput"><span class="identifier">const_end</span></code></a><code class="computeroutput"><span class="special">()</span></code>
whenever your code by intention is read-only; this will also solve most
rvalue problems,
</li>
<li class="listitem">
do not rely on ADL:
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<p class="simpara">
do not rely on ADL:
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
if you overload functions, include that header before the headers in
this library,
</li>
if you overload functions, include that header before the headers in
this library,
</li>
<li class="listitem">
put all overloads in namespace boost.
</li>
put all overloads in namespace boost.
</li>
</ul></div>
</li>
</ol></div>
@ -83,7 +87,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="upgrade/upgrade_from_1_34.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="faq.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="upgrade/upgrade_from_1_34.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="faq.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,8 +2,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Reference</title>
<link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="prev" href="concepts/concept_checking.html" title="Concept Checking">
@ -13,66 +13,69 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="concepts/concept_checking.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="reference/overview.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="concepts/concept_checking.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="reference/overview.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Reference">
<div class="section">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="range.reference"></a><a class="link" href="reference.html" title="Reference">Reference</a>
</h2></div></div></div>
<div class="toc"><dl>
<dt><span class="section"><a href="reference/overview.html">Overview</a></span></dt>
<dt><span class="section"><a href="reference/synopsis.html">Synopsis</a></span></dt>
<dt><span class="section"><a href="reference/semantics.html">Semantics</a></span></dt>
<dt><span class="section"><a href="reference/concept_implementation.html">Range concept
implementation</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="reference/semantics/metafunctions.html">Metafunctions</a></span></dt>
<dt><span class="section"><a href="reference/semantics/functions.html">Functions</a></span></dt>
<dt><span class="section"><a href="reference/concept_implementation/synopsis.html">Synopsis</a></span></dt>
<dt><span class="section"><a href="reference/concept_implementation/semantics.html">Semantics</a></span></dt>
</dl></dd>
<dt><span class="section"><a href="reference/adaptors.html"> Range Adaptors</a></span></dt>
<dt><span class="section"><a href="reference/adaptors.html">Range Adaptors</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="reference/adaptors/adaptors_introduction.html"> Introduction
<dt><span class="section"><a href="reference/adaptors/introduction.html">Introduction
and motivation</a></span></dt>
<dt><span class="section"><a href="reference/adaptors/adaptors_synopsis.html"> Synopsis</a></span></dt>
<dt><span class="section"><a href="reference/adaptors/adaptors_general_requirements.html">
General Requirements</a></span></dt>
<dt><span class="section"><a href="reference/adaptors/adaptors_reference.html"> Reference</a></span></dt>
<dt><span class="section"><a href="reference/adaptors/general_requirements.html">General
Requirements</a></span></dt>
<dt><span class="section"><a href="reference/adaptors/reference.html">Reference</a></span></dt>
</dl></dd>
<dt><span class="section"><a href="reference/algorithms.html"> Range Algorithm</a></span></dt>
<dt><span class="section"><a href="reference/algorithms.html">Range Algorithms</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="reference/algorithms/range_algorithm_introduction.html">
Introduction and motivation</a></span></dt>
<dt><span class="section"><a href="reference/algorithms/range_algorithm_mutating_algorithms.html">
Mutating algorithms</a></span></dt>
<dt><span class="section"><a href="reference/algorithms/range_algorithm_non_mutating_algorithms.html">
Non-mutating algorithms</a></span></dt>
<dt><span class="section"><a href="reference/algorithms/set_algorithms.html"> Set algorithms</a></span></dt>
<dt><span class="section"><a href="reference/algorithms/heap_algorithms.html"> Heap algorithms</a></span></dt>
<dt><span class="section"><a href="reference/algorithms/permutation_algorithms.html">
Permutation algorithms</a></span></dt>
<dt><span class="section"><a href="reference/algorithms/range_algorithm_new_algorithms.html">
New algorithms</a></span></dt>
<dt><span class="section"><a href="reference/algorithms/range_numeric.html"> Numeric
<dt><span class="section"><a href="reference/algorithms/introduction.html">Introduction
and motivation</a></span></dt>
<dt><span class="section"><a href="reference/algorithms/mutating.html">Mutating algorithms</a></span></dt>
<dt><span class="section"><a href="reference/algorithms/non_mutating.html">Non-mutating
algorithms</a></span></dt>
<dt><span class="section"><a href="reference/algorithms/set.html">Set algorithms</a></span></dt>
<dt><span class="section"><a href="reference/algorithms/heap.html">Heap algorithms</a></span></dt>
<dt><span class="section"><a href="reference/algorithms/permutation.html">Permutation
algorithms</a></span></dt>
<dt><span class="section"><a href="reference/algorithms/new.html">New algorithms</a></span></dt>
<dt><span class="section"><a href="reference/algorithms/numeric.html">Numeric algorithms</a></span></dt>
</dl></dd>
<dt><span class="section"><a href="reference/ranges.html"> Provided Ranges</a></span></dt>
<dt><span class="section"><a href="reference/ranges.html">Provided Ranges</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="reference/ranges/counting_range.html"> counting_range</a></span></dt>
<dt><span class="section"><a href="reference/ranges/istream_range.html"> istream_range</a></span></dt>
<dt><span class="section"><a href="reference/ranges/irange.html"> irange</a></span></dt>
<dt><span class="section"><a href="reference/ranges/any_range.html">any_range</a></span></dt>
<dt><span class="section"><a href="reference/ranges/counting_range.html">counting_range</a></span></dt>
<dt><span class="section"><a href="reference/ranges/istream_range.html">istream_range</a></span></dt>
<dt><span class="section"><a href="reference/ranges/irange.html">irange</a></span></dt>
</dl></dd>
<dt><span class="section"><a href="reference/extending.html"> Extending the library</a></span></dt>
<dt><span class="section"><a href="reference/utilities.html">Utilities</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="reference/extending/method_1.html"> Method 1: provide
<dt><span class="section"><a href="reference/utilities/iterator_range.html">Class <code class="computeroutput"><span class="identifier">iterator_range</span></code></a></span></dt>
<dt><span class="section"><a href="reference/utilities/sub_range.html">Class <code class="computeroutput"><span class="identifier">sub_range</span></code></a></span></dt>
<dt><span class="section"><a href="reference/utilities/join.html">Function join</a></span></dt>
</dl></dd>
<dt><span class="section"><a href="reference/extending.html">Extending the library</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="reference/extending/method_1.html">Method 1: provide
member functions and nested types</a></span></dt>
<dt><span class="section"><a href="reference/extending/method_2.html"> Method 2: provide
<dt><span class="section"><a href="reference/extending/method_2.html">Method 2: provide
free-standing functions and specialize metafunctions</a></span></dt>
<dt><span class="section"><a href="reference/extending/method_3.html"> Method 3: provide
<dt><span class="section"><a href="reference/extending/method_3.html">Method 3: provide
range adaptor implementations</a></span></dt>
</dl></dd>
</dl></div>
@ -87,7 +90,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="concepts/concept_checking.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="reference/overview.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="concepts/concept_checking.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="reference/overview.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,37 +2,36 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Adaptors</title>
<link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="semantics/functions.html" title="Functions">
<link rel="next" href="adaptors/adaptors_introduction.html" title="Introduction and motivation">
<link rel="prev" href="concept_implementation/semantics/functions.html" title="Functions">
<link rel="next" href="adaptors/introduction.html" title="Introduction and motivation">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="semantics/functions.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="adaptors/adaptors_introduction.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="concept_implementation/semantics/functions.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="adaptors/introduction.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Adaptors">
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.reference.adaptors"></a><a class="link" href="adaptors.html" title="Range Adaptors"> Range Adaptors</a>
<a name="range.reference.adaptors"></a><a class="link" href="adaptors.html" title="Range Adaptors">Range Adaptors</a>
</h3></div></div></div>
<div class="toc"><dl>
<dt><span class="section"><a href="adaptors/adaptors_introduction.html"> Introduction
<dt><span class="section"><a href="adaptors/introduction.html">Introduction
and motivation</a></span></dt>
<dt><span class="section"><a href="adaptors/adaptors_synopsis.html"> Synopsis</a></span></dt>
<dt><span class="section"><a href="adaptors/adaptors_general_requirements.html">
General Requirements</a></span></dt>
<dt><span class="section"><a href="adaptors/adaptors_reference.html"> Reference</a></span></dt>
<dt><span class="section"><a href="adaptors/general_requirements.html">General
Requirements</a></span></dt>
<dt><span class="section"><a href="adaptors/reference.html">Reference</a></span></dt>
</dl></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
@ -45,7 +44,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="semantics/functions.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="adaptors/adaptors_introduction.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="concept_implementation/semantics/functions.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="adaptors/introduction.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,75 +0,0 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Reference</title>
<link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../adaptors.html" title="Range Adaptors">
<link rel="prev" href="adaptors_general_requirements.html" title="General Requirements">
<link rel="next" href="adaptors_reference/adjacent_filtered.html" title="adjacent_filtered">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="adaptors_general_requirements.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="adaptors_reference/adjacent_filtered.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Reference">
<div class="titlepage"><div><div><h4 class="title">
<a name="range.reference.adaptors.adaptors_reference"></a><a class="link" href="adaptors_reference.html" title="Reference"> Reference</a>
</h4></div></div></div>
<div class="toc"><dl>
<dt><span class="section"><a href="adaptors_reference/adjacent_filtered.html">
adjacent_filtered</a></span></dt>
<dt><span class="section"><a href="adaptors_reference/copied.html">
copied</a></span></dt>
<dt><span class="section"><a href="adaptors_reference/filtered.html">
filtered</a></span></dt>
<dt><span class="section"><a href="adaptors_reference/indexed.html">
indexed</a></span></dt>
<dt><span class="section"><a href="adaptors_reference/indirected.html">
indirected</a></span></dt>
<dt><span class="section"><a href="adaptors_reference/map_keys.html">
map_keys</a></span></dt>
<dt><span class="section"><a href="adaptors_reference/map_values.html">
map_values</a></span></dt>
<dt><span class="section"><a href="adaptors_reference/replaced.html">
replaced</a></span></dt>
<dt><span class="section"><a href="adaptors_reference/replaced_if.html">
replaced_if</a></span></dt>
<dt><span class="section"><a href="adaptors_reference/reversed.html">
reversed</a></span></dt>
<dt><span class="section"><a href="adaptors_reference/sliced.html">
sliced</a></span></dt>
<dt><span class="section"><a href="adaptors_reference/strided.html">
strided</a></span></dt>
<dt><span class="section"><a href="adaptors_reference/tokenized.html">
tokenized</a></span></dt>
<dt><span class="section"><a href="adaptors_reference/transformed.html">
transformed</a></span></dt>
<dt><span class="section"><a href="adaptors_reference/uniqued.html">
uniqued</a></span></dt>
</dl></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="adaptors_general_requirements.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="adaptors_reference/adjacent_filtered.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,67 +0,0 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Synopsis</title>
<link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../adaptors.html" title="Range Adaptors">
<link rel="prev" href="adaptors_introduction.html" title="Introduction and motivation">
<link rel="next" href="adaptors_general_requirements.html" title="General Requirements">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="adaptors_introduction.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="adaptors_general_requirements.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Synopsis">
<div class="titlepage"><div><div><h4 class="title">
<a name="range.reference.adaptors.adaptors_synopsis"></a><a class="link" href="adaptors_synopsis.html" title="Synopsis"> Synopsis</a>
</h4></div></div></div>
<p>
The library provides the following Adapter Generator expressions:
</p>
<p>
</p>
<pre class="programlisting"><span class="identifier">rng</span> <span class="special">|</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">adjacent_filtered</span><span class="special">(</span><span class="identifier">bi_pred</span><span class="special">)</span>
<span class="identifier">rng</span> <span class="special">|</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">copied</span><span class="special">(</span><span class="identifier">n</span><span class="special">,</span><span class="identifier">m</span><span class="special">)</span>
<span class="identifier">rng</span> <span class="special">|</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">filtered</span><span class="special">(</span><span class="identifier">pred</span><span class="special">)</span>
<span class="identifier">rng</span> <span class="special">|</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">indexed</span>
<span class="identifier">rng</span> <span class="special">|</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">indirected</span>
<span class="identifier">rng</span> <span class="special">|</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">map_keys</span>
<span class="identifier">rng</span> <span class="special">|</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">map_values</span>
<span class="identifier">rng</span> <span class="special">|</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">replaced</span><span class="special">(</span><span class="identifier">new_value</span><span class="special">,</span> <span class="identifier">old_value</span><span class="special">)</span>
<span class="identifier">rng</span> <span class="special">|</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">replaced_if</span><span class="special">(</span><span class="identifier">pred</span><span class="special">,</span> <span class="identifier">new_value</span><span class="special">)</span>
<span class="identifier">rng</span> <span class="special">|</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">reversed</span>
<span class="identifier">rng</span> <span class="special">|</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">sliced</span><span class="special">(</span><span class="identifier">n</span><span class="special">,</span> <span class="identifier">m</span><span class="special">)</span>
<span class="identifier">rng</span> <span class="special">|</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">strided</span><span class="special">(</span><span class="identifier">n</span><span class="special">)</span>
<span class="identifier">rng</span> <span class="special">|</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">tokenized</span><span class="special">(</span> <span class="special">&lt;</span><span class="identifier">see</span> <span class="identifier">arguments</span> <span class="identifier">below</span><span class="special">&gt;</span> <span class="special">)</span>
<span class="identifier">rng</span> <span class="special">|</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">transformed</span><span class="special">(</span><span class="identifier">fun</span><span class="special">)</span>
<span class="identifier">rng</span> <span class="special">|</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">uniqued</span>
</pre>
<p>
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="adaptors_introduction.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="adaptors_general_requirements.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,30 +2,30 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>General Requirements</title>
<link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../adaptors.html" title="Range Adaptors">
<link rel="prev" href="adaptors_synopsis.html" title="Synopsis">
<link rel="next" href="adaptors_reference.html" title="Reference">
<link rel="prev" href="introduction.html" title="Introduction and motivation">
<link rel="next" href="reference.html" title="Reference">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="adaptors_synopsis.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="adaptors_reference.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="introduction.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors.html"><img src="../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="reference.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="General Requirements">
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="range.reference.adaptors.adaptors_general_requirements"></a><a class="link" href="adaptors_general_requirements.html" title="General Requirements">
General Requirements</a>
<a name="range.reference.adaptors.general_requirements"></a><a class="link" href="general_requirements.html" title="General Requirements">General
Requirements</a>
</h4></div></div></div>
<p>
In the description of generator expressions, the following notation is
@ -33,40 +33,40 @@
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">fwdRng</span></code> is an expression
of a type <code class="computeroutput"><span class="identifier">R</span></code> that models
<code class="computeroutput"><span class="identifier">ForwardRange</span></code>
</li>
<code class="computeroutput"><span class="identifier">fwdRng</span></code> is an expression
of a type <code class="computeroutput"><span class="identifier">R</span></code> that models
<code class="computeroutput"><span class="identifier">ForwardRange</span></code>
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">biRng</span></code> is an expression
of a type <code class="computeroutput"><span class="identifier">R</span></code> that models
<code class="computeroutput"><span class="identifier">BidirectionalRange</span></code>
</li>
<code class="computeroutput"><span class="identifier">biRng</span></code> is an expression
of a type <code class="computeroutput"><span class="identifier">R</span></code> that models
<code class="computeroutput"><span class="identifier">BidirectionalRange</span></code>
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">rndRng</span></code> is an expression
of a type <code class="computeroutput"><span class="identifier">R</span></code> that models
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
</li>
<code class="computeroutput"><span class="identifier">rndRng</span></code> is an expression
of a type <code class="computeroutput"><span class="identifier">R</span></code> that models
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">pred</span></code> is an expression
of a type that models <code class="computeroutput"><span class="identifier">UnaryPredicate</span></code>
</li>
<code class="computeroutput"><span class="identifier">pred</span></code> is an expression
of a type that models <code class="computeroutput"><span class="identifier">UnaryPredicate</span></code>
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">bi_pred</span></code> is an expression
of a type that models <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code>
</li>
<code class="computeroutput"><span class="identifier">bi_pred</span></code> is an expression
of a type that models <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code>
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">fun</span></code> is an expression
of a type that models <code class="computeroutput"><span class="identifier">UnaryFunction</span></code>
</li>
<code class="computeroutput"><span class="identifier">fun</span></code> is an expression
of a type that models <code class="computeroutput"><span class="identifier">UnaryFunction</span></code>
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">value</span></code>, <code class="computeroutput"><span class="identifier">new_value</span></code> and <code class="computeroutput"><span class="identifier">old_value</span></code>
are objects convertible to <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">range_value</span><span class="special">&lt;</span><span class="identifier">R</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</li>
<code class="computeroutput"><span class="identifier">value</span></code>, <code class="computeroutput"><span class="identifier">new_value</span></code> and <code class="computeroutput"><span class="identifier">old_value</span></code>
are objects convertible to <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">range_value</span><span class="special">&lt;</span><span class="identifier">R</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">n</span><span class="special">,</span><span class="identifier">m</span></code> are integer expressions convertible
to <code class="computeroutput"><span class="identifier">range_difference</span><span class="special">&lt;</span><span class="identifier">R</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</li>
<code class="computeroutput"><span class="identifier">n</span><span class="special">,</span><span class="identifier">m</span></code> are integer expressions convertible
to <code class="computeroutput"><span class="identifier">range_difference</span><span class="special">&lt;</span><span class="identifier">R</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</li>
</ul></div>
<p>
Also note that <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">range_value</span><span class="special">&lt;</span><span class="identifier">R</span><span class="special">&gt;::</span><span class="identifier">type</span></code> must be implicitly convertible to
@ -135,7 +135,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="adaptors_synopsis.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="adaptors_reference.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="introduction.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors.html"><img src="../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="reference.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,29 +2,29 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Introduction and motivation</title>
<link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../adaptors.html" title="Range Adaptors">
<link rel="prev" href="../adaptors.html" title="Range Adaptors">
<link rel="next" href="adaptors_synopsis.html" title="Synopsis">
<link rel="next" href="general_requirements.html" title="General Requirements">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../adaptors.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="adaptors_synopsis.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="../adaptors.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors.html"><img src="../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="general_requirements.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Introduction and motivation">
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="range.reference.adaptors.adaptors_introduction"></a><a class="link" href="adaptors_introduction.html" title="Introduction and motivation"> Introduction
<a name="range.reference.adaptors.introduction"></a><a class="link" href="introduction.html" title="Introduction and motivation">Introduction
and motivation</a>
</h4></div></div></div>
<p>
@ -121,9 +121,9 @@
these arguments are expressed with function call notation too. In those
situations, you will really appreciate the succinctness of <code class="computeroutput"><span class="keyword">operator</span><span class="special">|()</span></code>.
</p>
<a name="range.reference.adaptors.adaptors_introduction.composition_of_adaptors"></a><h6>
<a name="id3026637"></a>
<a class="link" href="adaptors_introduction.html#range.reference.adaptors.adaptors_introduction.composition_of_adaptors">Composition
<a name="range.reference.adaptors.introduction.composition_of_adaptors"></a><h6>
<a name="id659630"></a>
<a class="link" href="introduction.html#range.reference.adaptors.introduction.composition_of_adaptors">Composition
of Adaptors</a>
</h6>
<p>
@ -132,8 +132,14 @@
to algorithms. For example, consider these Range algorithms:
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem"><code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">copy</span><span class="special">(</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">out</span> <span class="special">)</span></code></li>
<li class="listitem"><code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">count</span><span class="special">(</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">pred</span> <span class="special">)</span></code></li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">copy</span><span class="special">(</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">out</span> <span class="special">)</span></code>
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">count</span><span class="special">(</span>
<span class="identifier">rng</span><span class="special">,</span>
<span class="identifier">pred</span> <span class="special">)</span></code>
</li>
</ul></div>
<p>
What should we do if we only want to copy an element <code class="computeroutput"><span class="identifier">a</span></code>
@ -142,13 +148,17 @@
The naive answer would be to use these algorithms:
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem"><code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">copy_if</span><span class="special">(</span>
<span class="identifier">rng</span><span class="special">,</span>
<span class="identifier">pred</span><span class="special">,</span>
<span class="identifier">out</span> <span class="special">)</span></code></li>
<li class="listitem"><code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">count_if</span><span class="special">(</span>
<span class="identifier">rng</span><span class="special">,</span>
<span class="identifier">pred</span> <span class="special">)</span></code></li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">copy_if</span><span class="special">(</span>
<span class="identifier">rng</span><span class="special">,</span>
<span class="identifier">pred</span><span class="special">,</span>
<span class="identifier">out</span> <span class="special">)</span></code>
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">count_if</span><span class="special">(</span>
<span class="identifier">rng</span><span class="special">,</span>
<span class="identifier">pred</span> <span class="special">)</span></code>
</li>
</ul></div>
<p>
These algorithms are only defined to maintain a one to one relationship
@ -158,9 +168,9 @@
is redundant development overhead for each new algorithm. The Adaptor Generator
is the design solution to this problem.
</p>
<a name="range.reference.adaptors.adaptors_introduction.range_adaptor_alternative_to_copy_if_algorithm"></a><h6>
<a name="id3026947"></a>
<a class="link" href="adaptors_introduction.html#range.reference.adaptors.adaptors_introduction.range_adaptor_alternative_to_copy_if_algorithm">Range
<a name="range.reference.adaptors.introduction.range_adaptor_alternative_to_copy_if_algorithm"></a><h6>
<a name="id659939"></a>
<a class="link" href="introduction.html#range.reference.adaptors.introduction.range_adaptor_alternative_to_copy_if_algorithm">Range
Adaptor alternative to copy_if algorithm</a>
</h6>
<p>
@ -175,9 +185,9 @@
</pre>
<p>
</p>
<a name="range.reference.adaptors.adaptors_introduction.range_adaptor_alternative_to_count_if_algorithm"></a><h6>
<a name="id3027116"></a>
<a class="link" href="adaptors_introduction.html#range.reference.adaptors.adaptors_introduction.range_adaptor_alternative_to_count_if_algorithm">Range
<a name="range.reference.adaptors.introduction.range_adaptor_alternative_to_count_if_algorithm"></a><h6>
<a name="id660104"></a>
<a class="link" href="introduction.html#range.reference.adaptors.introduction.range_adaptor_alternative_to_count_if_algorithm">Range
Adaptor alternative to count_if algorithm</a>
</h6>
<p>
@ -268,7 +278,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../adaptors.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="adaptors_synopsis.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="../adaptors.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors.html"><img src="../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="general_requirements.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,61 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Reference</title>
<link rel="stylesheet" href="../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../adaptors.html" title="Range Adaptors">
<link rel="prev" href="general_requirements.html" title="General Requirements">
<link rel="next" href="reference/adjacent_filtered.html" title="adjacent_filtered">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="general_requirements.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors.html"><img src="../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="reference/adjacent_filtered.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="range.reference.adaptors.reference"></a><a class="link" href="reference.html" title="Reference">Reference</a>
</h4></div></div></div>
<div class="toc"><dl>
<dt><span class="section"><a href="reference/adjacent_filtered.html">adjacent_filtered</a></span></dt>
<dt><span class="section"><a href="reference/copied.html">copied</a></span></dt>
<dt><span class="section"><a href="reference/filtered.html">filtered</a></span></dt>
<dt><span class="section"><a href="reference/indexed.html">indexed</a></span></dt>
<dt><span class="section"><a href="reference/indirected.html">indirected</a></span></dt>
<dt><span class="section"><a href="reference/map_keys.html">map_keys</a></span></dt>
<dt><span class="section"><a href="reference/map_values.html">map_values</a></span></dt>
<dt><span class="section"><a href="reference/replaced.html">replaced</a></span></dt>
<dt><span class="section"><a href="reference/replaced_if.html">replaced_if</a></span></dt>
<dt><span class="section"><a href="reference/reversed.html">reversed</a></span></dt>
<dt><span class="section"><a href="reference/sliced.html">sliced</a></span></dt>
<dt><span class="section"><a href="reference/strided.html">strided</a></span></dt>
<dt><span class="section"><a href="reference/type_erased.html">type_erased</a></span></dt>
<dt><span class="section"><a href="reference/tokenized.html">tokenized</a></span></dt>
<dt><span class="section"><a href="reference/transformed.html">transformed</a></span></dt>
<dt><span class="section"><a href="reference/uniqued.html">uniqued</a></span></dt>
</dl></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="general_requirements.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors.html"><img src="../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="reference/adjacent_filtered.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,33 +2,32 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>adjacent_filtered</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../adaptors_reference.html" title="Reference">
<link rel="prev" href="../adaptors_reference.html" title="Reference">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="../reference.html" title="Reference">
<link rel="next" href="copied.html" title="copied">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="copied.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="../reference.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="copied.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="adjacent_filtered">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.adaptors.adaptors_reference.adjacent_filtered"></a><a class="link" href="adjacent_filtered.html" title="adjacent_filtered">
adjacent_filtered</a>
<a name="range.reference.adaptors.reference.adjacent_filtered"></a><a class="link" href="adjacent_filtered.html" title="adjacent_filtered">adjacent_filtered</a>
</h5></div></div></div>
<div class="toc"><dl><dt><span class="section"><a href="adjacent_filtered.html#range.reference.adaptors.adaptors_reference.adjacent_filtered.adjacent_filtered_example">
adjacent_filtered example</a></span></dt></dl></div>
<div class="toc"><dl><dt><span class="section"><a href="adjacent_filtered.html#range.reference.adaptors.reference.adjacent_filtered.adjacent_filtered_example">adjacent_filtered
example</a></span></dt></dl></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
@ -77,26 +76,36 @@
</table></div>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<span class="bold"><strong>Precondition:</strong></span> The <code class="computeroutput"><span class="identifier">value_type</span></code>
of the range is convertible to both argument types of <code class="computeroutput"><span class="identifier">bi_pred</span></code>.
</li>
<span class="bold"><strong>Precondition:</strong></span> The <code class="computeroutput"><span class="identifier">value_type</span></code> of the range is convertible
to both argument types of <code class="computeroutput"><span class="identifier">bi_pred</span></code>.
</li>
<li class="listitem">
<span class="bold"><strong>Postcondition:</strong></span> For all adjacent elements
<code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">]</span></code> in the returned range, <code class="computeroutput"><span class="identifier">bi_pred</span><span class="special">(</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">)</span></code>
is <code class="computeroutput"><span class="keyword">true</span></code>.
</li>
<span class="bold"><strong>Postcondition:</strong></span> For all adjacent
elements <code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">]</span></code> in the returned range, <code class="computeroutput"><span class="identifier">bi_pred</span><span class="special">(</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">)</span></code>
is <code class="computeroutput"><span class="keyword">true</span></code>.
</li>
<li class="listitem">
<span class="bold"><strong>Throws:</strong></span> Whatever the copy constructor
of <code class="computeroutput"><span class="identifier">bi_pred</span></code> might throw.
</li>
<span class="bold"><strong>Throws:</strong></span> Whatever the copy constructor
of <code class="computeroutput"><span class="identifier">bi_pred</span></code> might
throw.
</li>
<li class="listitem">
<span class="bold"><strong>Range Category:</strong></span><code class="computeroutput"><span class="identifier">SinglePassRange</span></code>
</li>
<span class="bold"><strong>Range Category:</strong></span> <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a>
</li>
<li class="listitem">
<span class="bold"><strong>Return Type:</strong></span> <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">adjacent_filtered_range</span><span class="special">&lt;</span><span class="identifier">typeof</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)&gt;</span></code>
</li>
<li class="listitem">
<span class="bold"><strong>Returned Range Category:</strong></span> The minimum
of the range category of <code class="computeroutput"><span class="identifier">rng</span></code>
and <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward Range</a>
</li>
</ul></div>
<div class="section" title="adjacent_filtered example">
<div class="section">
<div class="titlepage"><div><div><h6 class="title">
<a name="range.reference.adaptors.adaptors_reference.adjacent_filtered.adjacent_filtered_example"></a><a class="link" href="adjacent_filtered.html#range.reference.adaptors.adaptors_reference.adjacent_filtered.adjacent_filtered_example" title="adjacent_filtered example">
adjacent_filtered example</a>
<a name="range.reference.adaptors.reference.adjacent_filtered.adjacent_filtered_example"></a><a class="link" href="adjacent_filtered.html#range.reference.adaptors.reference.adjacent_filtered.adjacent_filtered_example" title="adjacent_filtered example">adjacent_filtered
example</a>
</h6></div></div></div>
<p>
@ -145,7 +154,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="copied.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="../reference.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="copied.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,10 +2,10 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>copied</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../adaptors_reference.html" title="Reference">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="adjacent_filtered.html" title="adjacent_filtered">
<link rel="next" href="filtered.html" title="filtered">
</head>
@ -13,22 +13,21 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="adjacent_filtered.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="filtered.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="adjacent_filtered.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="filtered.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="copied">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.adaptors.adaptors_reference.copied"></a><a class="link" href="copied.html" title="copied">
copied</a>
<a name="range.reference.adaptors.reference.copied"></a><a class="link" href="copied.html" title="copied">copied</a>
</h5></div></div></div>
<div class="toc"><dl><dt><span class="section"><a href="copied.html#range.reference.adaptors.adaptors_reference.copied.copied_example">
copied example</a></span></dt></dl></div>
<div class="toc"><dl><dt><span class="section"><a href="copied.html#range.reference.adaptors.reference.copied.copied_example">copied
example</a></span></dt></dl></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
@ -79,26 +78,31 @@
</table></div>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<span class="bold"><strong>Precondition:</strong></span><code class="computeroutput"><span class="number">0</span>
<span class="special">&lt;=</span> <span class="identifier">n</span>
<span class="special">&amp;&amp;</span> <span class="identifier">n</span>
<span class="special">&lt;=</span> <span class="identifier">m</span>
<span class="special">&amp;&amp;</span> <span class="identifier">m</span>
<span class="special">&lt;</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code>
</li>
<span class="bold"><strong>Precondition:</strong></span> <code class="computeroutput"><span class="number">0</span>
<span class="special">&lt;=</span> <span class="identifier">n</span>
<span class="special">&amp;&amp;</span> <span class="identifier">n</span>
<span class="special">&lt;=</span> <span class="identifier">m</span>
<span class="special">&amp;&amp;</span> <span class="identifier">m</span>
<span class="special">&lt;</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code>
</li>
<li class="listitem">
<span class="bold"><strong>Returns:</strong></span> A new <code class="computeroutput"><span class="identifier">iterator_range</span></code>
that holds the sliced range <code class="computeroutput"><span class="special">[</span><span class="identifier">n</span><span class="special">,</span><span class="identifier">m</span><span class="special">)</span></code>
of the original range.
</li>
<span class="bold"><strong>Returns:</strong></span> A new <code class="computeroutput"><span class="identifier">iterator_range</span></code>
that holds the sliced range <code class="computeroutput"><span class="special">[</span><span class="identifier">n</span><span class="special">,</span><span class="identifier">m</span><span class="special">)</span></code>
of the original range.
</li>
<li class="listitem">
<span class="bold"><strong>Range Category:</strong></span><code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
</li>
<span class="bold"><strong>Range Category:</strong></span> <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a>
</li>
<li class="listitem">
<span class="bold"><strong>Returned Range Category:</strong></span> <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a>
</li>
</ul></div>
<div class="section" title="copied example">
<div class="section">
<div class="titlepage"><div><div><h6 class="title">
<a name="range.reference.adaptors.adaptors_reference.copied.copied_example"></a><a class="link" href="copied.html#range.reference.adaptors.adaptors_reference.copied.copied_example" title="copied example">
copied example</a>
<a name="range.reference.adaptors.reference.copied.copied_example"></a><a class="link" href="copied.html#range.reference.adaptors.reference.copied.copied_example" title="copied example">copied
example</a>
</h6></div></div></div>
<p>
@ -146,7 +150,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="adjacent_filtered.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="filtered.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="adjacent_filtered.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="filtered.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,10 +2,10 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>filtered</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../adaptors_reference.html" title="Reference">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="copied.html" title="copied">
<link rel="next" href="indexed.html" title="indexed">
</head>
@ -13,22 +13,21 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="copied.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="indexed.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="copied.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="indexed.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="filtered">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.adaptors.adaptors_reference.filtered"></a><a class="link" href="filtered.html" title="filtered">
filtered</a>
<a name="range.reference.adaptors.reference.filtered"></a><a class="link" href="filtered.html" title="filtered">filtered</a>
</h5></div></div></div>
<div class="toc"><dl><dt><span class="section"><a href="filtered.html#range.reference.adaptors.adaptors_reference.filtered.filtered_example">
filtered example</a></span></dt></dl></div>
<div class="toc"><dl><dt><span class="section"><a href="filtered.html#range.reference.adaptors.reference.filtered.filtered_example">filtered
example</a></span></dt></dl></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
@ -77,29 +76,36 @@
</table></div>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<span class="bold"><strong>Precondition:</strong></span> The <code class="computeroutput"><span class="identifier">value_type</span></code>
of the range is convertible to the argument type of <code class="computeroutput"><span class="identifier">pred</span></code>.
</li>
<span class="bold"><strong>Precondition:</strong></span> The <code class="computeroutput"><span class="identifier">value_type</span></code> of the range is convertible
to the argument type of <code class="computeroutput"><span class="identifier">pred</span></code>.
</li>
<li class="listitem">
<span class="bold"><strong>Postcondition:</strong></span> For all adjacent elements
<code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">]</span></code> in the returned range, <code class="computeroutput"><span class="identifier">pred</span><span class="special">(</span><span class="identifier">x</span><span class="special">)</span></code>
is <code class="computeroutput"><span class="keyword">true</span></code>.
</li>
<span class="bold"><strong>Postcondition:</strong></span> For all adjacent
elements <code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">]</span></code> in the returned range, <code class="computeroutput"><span class="identifier">pred</span><span class="special">(</span><span class="identifier">x</span><span class="special">)</span></code>
is <code class="computeroutput"><span class="keyword">true</span></code>.
</li>
<li class="listitem">
<span class="bold"><strong>Throws:</strong></span> Whatever the copy constructor
of <code class="computeroutput"><span class="identifier">pred</span></code> might throw.
</li>
<span class="bold"><strong>Throws:</strong></span> Whatever the copy constructor
of <code class="computeroutput"><span class="identifier">pred</span></code> might throw.
</li>
<li class="listitem">
<span class="bold"><strong>Range Category:</strong></span><code class="computeroutput"><span class="identifier">ForwardRange</span></code>
</li>
<span class="bold"><strong>Range Category:</strong></span> <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a>
</li>
<li class="listitem">
<span class="bold"><strong>Returned Range Category:</strong></span><code class="computeroutput"><span class="identifier">ForwardRange</span></code>
</li>
<span class="bold"><strong>Range Return Type:</strong></span> <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">filtered_range</span><span class="special">&lt;</span><span class="identifier">typeof</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)&gt;</span></code>
</li>
<li class="listitem">
<span class="bold"><strong>Returned Range Category:</strong></span> The minimum
of the range category of <code class="computeroutput"><span class="identifier">rng</span></code>
and <a class="link" href="../../../concepts/bidirectional_range.html" title="Bidirectional Range">Bidirectional
Range</a>
</li>
</ul></div>
<div class="section" title="filtered example">
<div class="section">
<div class="titlepage"><div><div><h6 class="title">
<a name="range.reference.adaptors.adaptors_reference.filtered.filtered_example"></a><a class="link" href="filtered.html#range.reference.adaptors.adaptors_reference.filtered.filtered_example" title="filtered example">
filtered example</a>
<a name="range.reference.adaptors.reference.filtered.filtered_example"></a><a class="link" href="filtered.html#range.reference.adaptors.reference.filtered.filtered_example" title="filtered example">filtered
example</a>
</h6></div></div></div>
<p>
@ -150,7 +156,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="copied.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="indexed.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="copied.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="indexed.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,10 +2,10 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>indexed</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../adaptors_reference.html" title="Reference">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="filtered.html" title="filtered">
<link rel="next" href="indirected.html" title="indirected">
</head>
@ -13,22 +13,21 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="filtered.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="indirected.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="filtered.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="indirected.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="indexed">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.adaptors.adaptors_reference.indexed"></a><a class="link" href="indexed.html" title="indexed">
indexed</a>
<a name="range.reference.adaptors.reference.indexed"></a><a class="link" href="indexed.html" title="indexed">indexed</a>
</h5></div></div></div>
<div class="toc"><dl><dt><span class="section"><a href="indexed.html#range.reference.adaptors.adaptors_reference.indexed.indexed_example">
indexed example</a></span></dt></dl></div>
<div class="toc"><dl><dt><span class="section"><a href="indexed.html#range.reference.adaptors.reference.indexed.indexed_example">indexed
example</a></span></dt></dl></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
@ -76,21 +75,29 @@
</table></div>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<span class="bold"><strong>Returns:</strong></span> A range adapted to return
both the element and the associated index. The returned range consists
of iterators that have in addition to the usual iterator member functions
an <code class="computeroutput"><span class="identifier">index</span><span class="special">()</span></code>
member function that returns the appropriate index for the element
in the sequence corresponding with the iterator.
</li>
<span class="bold"><strong>Returns:</strong></span> A range adapted to return
both the element and the associated index. The returned range consists
of iterators that have in addition to the usual iterator member functions
an <code class="computeroutput"><span class="identifier">index</span><span class="special">()</span></code>
member function that returns the appropriate index for the element
in the sequence corresponding with the iterator.
</li>
<li class="listitem">
<span class="bold"><strong>Range Category:</strong></span><code class="computeroutput"><span class="identifier">SinglePassRange</span></code>
</li>
<span class="bold"><strong>Range Category:</strong></span> <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a>
</li>
<li class="listitem">
<span class="bold"><strong>Range Return Type:</strong></span> <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">indexed_range</span><span class="special">&lt;</span><span class="identifier">typeof</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)&gt;</span></code>
</li>
<li class="listitem">
<span class="bold"><strong>Returned Range Category:</strong></span> The range
category of <code class="computeroutput"><span class="identifier">rng</span></code>
</li>
</ul></div>
<div class="section" title="indexed example">
<div class="section">
<div class="titlepage"><div><div><h6 class="title">
<a name="range.reference.adaptors.adaptors_reference.indexed.indexed_example"></a><a class="link" href="indexed.html#range.reference.adaptors.adaptors_reference.indexed.indexed_example" title="indexed example">
indexed example</a>
<a name="range.reference.adaptors.reference.indexed.indexed_example"></a><a class="link" href="indexed.html#range.reference.adaptors.reference.indexed.indexed_example" title="indexed example">indexed
example</a>
</h6></div></div></div>
<p>
@ -180,7 +187,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="filtered.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="indirected.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="filtered.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="indirected.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,10 +2,10 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>indirected</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../adaptors_reference.html" title="Reference">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="indexed.html" title="indexed">
<link rel="next" href="map_keys.html" title="map_keys">
</head>
@ -13,22 +13,21 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="indexed.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="map_keys.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="indexed.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="map_keys.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="indirected">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.adaptors.adaptors_reference.indirected"></a><a class="link" href="indirected.html" title="indirected">
indirected</a>
<a name="range.reference.adaptors.reference.indirected"></a><a class="link" href="indirected.html" title="indirected">indirected</a>
</h5></div></div></div>
<div class="toc"><dl><dt><span class="section"><a href="indirected.html#range.reference.adaptors.adaptors_reference.indirected.indirected_example">
indirected example</a></span></dt></dl></div>
<div class="toc"><dl><dt><span class="section"><a href="indirected.html#range.reference.adaptors.reference.indirected.indirected_example">indirected
example</a></span></dt></dl></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
@ -76,22 +75,33 @@
</table></div>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<span class="bold"><strong>Precondition:</strong></span> The <code class="computeroutput"><span class="identifier">value_type</span></code>
of the range defines unary <code class="computeroutput"><span class="keyword">operator</span><span class="special">*()</span></code>
</li>
<span class="bold"><strong>Precondition:</strong></span> The <code class="computeroutput"><span class="identifier">value_type</span></code> of the range defines
unary <code class="computeroutput"><span class="keyword">operator</span><span class="special">*()</span></code>
</li>
<li class="listitem">
<span class="bold"><strong>Postcondition:</strong></span> For all elements <code class="computeroutput"><span class="identifier">x</span></code> in the returned range, <code class="computeroutput"><span class="identifier">x</span></code> is the result of <code class="computeroutput"><span class="special">*</span><span class="identifier">y</span></code>
where <code class="computeroutput"><span class="identifier">y</span></code> is the corresponding
element in the original range.
</li>
<span class="bold"><strong>Postcondition:</strong></span> For all elements
<code class="computeroutput"><span class="identifier">x</span></code> in the returned
range, <code class="computeroutput"><span class="identifier">x</span></code> is the result
of <code class="computeroutput"><span class="special">*</span><span class="identifier">y</span></code>
where <code class="computeroutput"><span class="identifier">y</span></code> is the corresponding
element in the original range.
</li>
<li class="listitem">
<span class="bold"><strong>Range Category:</strong></span><code class="computeroutput"><span class="identifier">SinglePassRange</span></code>
</li>
<span class="bold"><strong>Range Category:</strong></span> <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a>
</li>
<li class="listitem">
<span class="bold"><strong>Range Return Type:</strong></span> <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">indirected_range</span><span class="special">&lt;</span><span class="identifier">typeof</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)&gt;</span></code>
</li>
<li class="listitem">
<span class="bold"><strong>Returned Range Category:</strong></span> The range
category of <code class="computeroutput"><span class="identifier">rng</span></code>
</li>
</ul></div>
<div class="section" title="indirected example">
<div class="section">
<div class="titlepage"><div><div><h6 class="title">
<a name="range.reference.adaptors.adaptors_reference.indirected.indirected_example"></a><a class="link" href="indirected.html#range.reference.adaptors.adaptors_reference.indirected.indirected_example" title="indirected example">
indirected example</a>
<a name="range.reference.adaptors.reference.indirected.indirected_example"></a><a class="link" href="indirected.html#range.reference.adaptors.reference.indirected.indirected_example" title="indirected example">indirected
example</a>
</h6></div></div></div>
<p>
@ -140,7 +150,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="indexed.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="map_keys.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="indexed.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="map_keys.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,10 +2,10 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>map_keys</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../adaptors_reference.html" title="Reference">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="indirected.html" title="indirected">
<link rel="next" href="map_values.html" title="map_values">
</head>
@ -13,22 +13,21 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="indirected.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="map_values.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="indirected.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="map_values.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="map_keys">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.adaptors.adaptors_reference.map_keys"></a><a class="link" href="map_keys.html" title="map_keys">
map_keys</a>
<a name="range.reference.adaptors.reference.map_keys"></a><a class="link" href="map_keys.html" title="map_keys">map_keys</a>
</h5></div></div></div>
<div class="toc"><dl><dt><span class="section"><a href="map_keys.html#range.reference.adaptors.adaptors_reference.map_keys.map_keys_example">
map_keys example</a></span></dt></dl></div>
<div class="toc"><dl><dt><span class="section"><a href="map_keys.html#range.reference.adaptors.reference.map_keys.map_keys_example">map_keys
example</a></span></dt></dl></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
@ -76,21 +75,32 @@
</table></div>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<span class="bold"><strong>Precondition:</strong></span> The <code class="computeroutput"><span class="identifier">value_type</span></code>
of the range is an instantiation of <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></code>.
</li>
<span class="bold"><strong>Precondition:</strong></span> The <code class="computeroutput"><span class="identifier">value_type</span></code> of the range is an instantiation
of <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></code>.
</li>
<li class="listitem">
<span class="bold"><strong>Postcondition:</strong></span> For all elements <code class="computeroutput"><span class="identifier">x</span></code> in the returned range, <code class="computeroutput"><span class="identifier">x</span></code> is the result of <code class="computeroutput"><span class="identifier">y</span><span class="special">.</span><span class="identifier">first</span></code> where <code class="computeroutput"><span class="identifier">y</span></code>
is the corresponding element in the original range.
</li>
<span class="bold"><strong>Postcondition:</strong></span> For all elements
<code class="computeroutput"><span class="identifier">x</span></code> in the returned
range, <code class="computeroutput"><span class="identifier">x</span></code> is the result
of <code class="computeroutput"><span class="identifier">y</span><span class="special">.</span><span class="identifier">first</span></code> where <code class="computeroutput"><span class="identifier">y</span></code>
is the corresponding element in the original range.
</li>
<li class="listitem">
<span class="bold"><strong>Range Category:</strong></span><code class="computeroutput"><span class="identifier">SinglePassRange</span></code>
</li>
<span class="bold"><strong>Range Category:</strong></span> <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a>
</li>
<li class="listitem">
<span class="bold"><strong>Range Return Type:</strong></span> <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">select_first_range</span><span class="special">&lt;</span><span class="identifier">typeof</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)&gt;</span></code>
</li>
<li class="listitem">
<span class="bold"><strong>Returned Range Category:</strong></span> The range
category of <code class="computeroutput"><span class="identifier">rng</span></code>.
</li>
</ul></div>
<div class="section" title="map_keys example">
<div class="section">
<div class="titlepage"><div><div><h6 class="title">
<a name="range.reference.adaptors.adaptors_reference.map_keys.map_keys_example"></a><a class="link" href="map_keys.html#range.reference.adaptors.adaptors_reference.map_keys.map_keys_example" title="map_keys example">
map_keys example</a>
<a name="range.reference.adaptors.reference.map_keys.map_keys_example"></a><a class="link" href="map_keys.html#range.reference.adaptors.reference.map_keys.map_keys_example" title="map_keys example">map_keys
example</a>
</h6></div></div></div>
<p>
@ -140,7 +150,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="indirected.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="map_values.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="indirected.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="map_values.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,10 +2,10 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>map_values</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../adaptors_reference.html" title="Reference">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="map_keys.html" title="map_keys">
<link rel="next" href="replaced.html" title="replaced">
</head>
@ -13,22 +13,21 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="map_keys.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="replaced.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="map_keys.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="replaced.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="map_values">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.adaptors.adaptors_reference.map_values"></a><a class="link" href="map_values.html" title="map_values">
map_values</a>
<a name="range.reference.adaptors.reference.map_values"></a><a class="link" href="map_values.html" title="map_values">map_values</a>
</h5></div></div></div>
<div class="toc"><dl><dt><span class="section"><a href="map_values.html#range.reference.adaptors.adaptors_reference.map_values.map_values_example">
map_values example</a></span></dt></dl></div>
<div class="toc"><dl><dt><span class="section"><a href="map_values.html#range.reference.adaptors.reference.map_values.map_values_example">map_values
example</a></span></dt></dl></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
@ -76,21 +75,34 @@
</table></div>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<span class="bold"><strong>Precondition:</strong></span> The <code class="computeroutput"><span class="identifier">value_type</span></code>
of the range is an instantiation of <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></code>.
</li>
<span class="bold"><strong>Precondition:</strong></span> The <code class="computeroutput"><span class="identifier">value_type</span></code> of the range is an instantiation
of <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></code>.
</li>
<li class="listitem">
<span class="bold"><strong>Postcondition:</strong></span> For all elements <code class="computeroutput"><span class="identifier">x</span></code> in the returned range, <code class="computeroutput"><span class="identifier">x</span></code> is the result of <code class="computeroutput"><span class="identifier">y</span><span class="special">.</span><span class="identifier">second</span></code> where <code class="computeroutput"><span class="identifier">y</span></code>
is the corresponding element in the original range.
</li>
<span class="bold"><strong>Postcondition:</strong></span> For all elements
<code class="computeroutput"><span class="identifier">x</span></code> in the returned
range, <code class="computeroutput"><span class="identifier">x</span></code> is the result
of <code class="computeroutput"><span class="identifier">y</span><span class="special">.</span><span class="identifier">second</span></code> where <code class="computeroutput"><span class="identifier">y</span></code>
is the corresponding element in the original range.
</li>
<li class="listitem">
<span class="bold"><strong>Range Category:</strong></span><code class="computeroutput"><span class="identifier">SinglePassRange</span></code>
</li>
<span class="bold"><strong>Range Category:</strong></span> <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a>
</li>
<li class="listitem">
<span class="bold"><strong>Range Return Type:</strong></span> for constant
ranges, <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">select_second_const</span><span class="special">&lt;</span><span class="identifier">typeof</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)&gt;</span></code>
otherwise <code class="computeroutput"><span class="identifier">boost</span><span class="special">:</span><span class="identifier">select_second_mutable</span><span class="special">&lt;</span><span class="identifier">typeof</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)&gt;</span></code>
</li>
<li class="listitem">
<span class="bold"><strong>Returned Range Category:</strong></span> The range
category of <code class="computeroutput"><span class="identifier">rng</span></code>.
</li>
</ul></div>
<div class="section" title="map_values example">
<div class="section">
<div class="titlepage"><div><div><h6 class="title">
<a name="range.reference.adaptors.adaptors_reference.map_values.map_values_example"></a><a class="link" href="map_values.html#range.reference.adaptors.adaptors_reference.map_values.map_values_example" title="map_values example">
map_values example</a>
<a name="range.reference.adaptors.reference.map_values.map_values_example"></a><a class="link" href="map_values.html#range.reference.adaptors.reference.map_values.map_values_example" title="map_values example">map_values
example</a>
</h6></div></div></div>
<p>
@ -140,7 +152,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="map_keys.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="replaced.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="map_keys.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="replaced.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,10 +2,10 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>replaced</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../adaptors_reference.html" title="Reference">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="map_values.html" title="map_values">
<link rel="next" href="replaced_if.html" title="replaced_if">
</head>
@ -13,22 +13,21 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="map_values.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="replaced_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="map_values.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="replaced_if.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="replaced">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.adaptors.adaptors_reference.replaced"></a><a class="link" href="replaced.html" title="replaced">
replaced</a>
<a name="range.reference.adaptors.reference.replaced"></a><a class="link" href="replaced.html" title="replaced">replaced</a>
</h5></div></div></div>
<div class="toc"><dl><dt><span class="section"><a href="replaced.html#range.reference.adaptors.adaptors_reference.replaced.replaced_example">
replaced example</a></span></dt></dl></div>
<div class="toc"><dl><dt><span class="section"><a href="replaced.html#range.reference.adaptors.reference.replaced.replaced_example">replaced
example</a></span></dt></dl></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
@ -79,35 +78,49 @@
</table></div>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<span class="bold"><strong>Precondition:</strong></span><div class="itemizedlist"><ul class="itemizedlist" type="circle">
<p class="simpara">
<span class="bold"><strong>Precondition:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="circle">
<li class="listitem">
<code class="computeroutput"><span class="identifier">new_value</span></code> is convertible
to the <code class="computeroutput"><span class="identifier">value_type</span></code>
of the range.
</li>
<code class="computeroutput"><span class="identifier">new_value</span></code> is
convertible to the <code class="computeroutput"><span class="identifier">value_type</span></code>
of the range.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">old_value</span></code> is convertible
to the <code class="computeroutput"><span class="identifier">value_type</span></code>
of the range.
</li>
<code class="computeroutput"><span class="identifier">old_value</span></code> is
convertible to the <code class="computeroutput"><span class="identifier">value_type</span></code>
of the range.
</li>
</ul></div>
</li>
<li class="listitem">
<span class="bold"><strong>Postcondition:</strong></span> For all elements <code class="computeroutput"><span class="identifier">x</span></code> in the returned range, the value
<code class="computeroutput"><span class="identifier">x</span></code> is equal to the value
of <code class="computeroutput"><span class="special">(</span><span class="identifier">y</span>
<span class="special">==</span> <span class="identifier">old_value</span><span class="special">)</span> <span class="special">?</span> <span class="identifier">new_value</span> <span class="special">:</span>
<span class="identifier">y</span></code> where <code class="computeroutput"><span class="identifier">y</span></code>
is the corresponding element in the original range.
</li>
<span class="bold"><strong>Postcondition:</strong></span> For all elements
<code class="computeroutput"><span class="identifier">x</span></code> in the returned
range, the value <code class="computeroutput"><span class="identifier">x</span></code>
is equal to the value of <code class="computeroutput"><span class="special">(</span><span class="identifier">y</span> <span class="special">==</span>
<span class="identifier">old_value</span><span class="special">)</span>
<span class="special">?</span> <span class="identifier">new_value</span>
<span class="special">:</span> <span class="identifier">y</span></code>
where <code class="computeroutput"><span class="identifier">y</span></code> is the corresponding
element in the original range.
</li>
<li class="listitem">
<span class="bold"><strong>Range Category:</strong></span><code class="computeroutput"><span class="identifier">ForwardRange</span></code>
</li>
<span class="bold"><strong>Range Category:</strong></span> <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a>
</li>
<li class="listitem">
<span class="bold"><strong>Range Return Type:</strong></span> <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">replaced_range</span><span class="special">&lt;</span><span class="identifier">typeof</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)&gt;</span></code>
</li>
<li class="listitem">
<span class="bold"><strong>Returned Range Category:</strong></span> The range
category of <code class="computeroutput"><span class="identifier">rng</span></code>.
</li>
</ul></div>
<div class="section" title="replaced example">
<div class="section">
<div class="titlepage"><div><div><h6 class="title">
<a name="range.reference.adaptors.adaptors_reference.replaced.replaced_example"></a><a class="link" href="replaced.html#range.reference.adaptors.adaptors_reference.replaced.replaced_example" title="replaced example">
replaced example</a>
<a name="range.reference.adaptors.reference.replaced.replaced_example"></a><a class="link" href="replaced.html#range.reference.adaptors.reference.replaced.replaced_example" title="replaced example">replaced
example</a>
</h6></div></div></div>
<p>
@ -155,7 +168,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="map_values.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="replaced_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="map_values.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="replaced_if.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,10 +2,10 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>replaced_if</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../adaptors_reference.html" title="Reference">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="replaced.html" title="replaced">
<link rel="next" href="reversed.html" title="reversed">
</head>
@ -13,22 +13,21 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="replaced.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="reversed.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="replaced.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="reversed.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="replaced_if">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.adaptors.adaptors_reference.replaced_if"></a><a class="link" href="replaced_if.html" title="replaced_if">
replaced_if</a>
<a name="range.reference.adaptors.reference.replaced_if"></a><a class="link" href="replaced_if.html" title="replaced_if">replaced_if</a>
</h5></div></div></div>
<div class="toc"><dl><dt><span class="section"><a href="replaced_if.html#range.reference.adaptors.adaptors_reference.replaced_if.replaced_if_example">
replaced_if example</a></span></dt></dl></div>
<div class="toc"><dl><dt><span class="section"><a href="replaced_if.html#range.reference.adaptors.reference.replaced_if.replaced_if_example">replaced_if
example</a></span></dt></dl></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
@ -79,34 +78,45 @@
</table></div>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<span class="bold"><strong>Precondition:</strong></span><div class="itemizedlist"><ul class="itemizedlist" type="circle">
<p class="simpara">
<span class="bold"><strong>Precondition:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="circle">
<li class="listitem">
The range <code class="computeroutput"><span class="identifier">value_type</span></code>
is convertible to the argument type of <code class="computeroutput"><span class="identifier">pred</span></code>.
</li>
The range <code class="computeroutput"><span class="identifier">value_type</span></code>
is convertible to the argument type of <code class="computeroutput"><span class="identifier">pred</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">new_value</span></code> is convertible
to the <code class="computeroutput"><span class="identifier">value_type</span></code>
of the range.
</li>
<code class="computeroutput"><span class="identifier">new_value</span></code> is
convertible to the <code class="computeroutput"><span class="identifier">value_type</span></code>
of the range.
</li>
</ul></div>
</li>
<li class="listitem">
<span class="bold"><strong>Postconditions:</strong></span> For all elements
<code class="computeroutput"><span class="identifier">x</span></code> in the returned range,
the value <code class="computeroutput"><span class="identifier">x</span></code> is equal
to the value of <code class="computeroutput"><span class="identifier">pred</span><span class="special">(</span><span class="identifier">y</span><span class="special">)</span> <span class="special">?</span> <span class="identifier">new_value</span> <span class="special">:</span>
<span class="identifier">y</span></code> where <code class="computeroutput"><span class="identifier">y</span></code>
is the corresponding element in the original range.
</li>
<span class="bold"><strong>Postconditions:</strong></span> For all elements
<code class="computeroutput"><span class="identifier">x</span></code> in the returned
range, the value <code class="computeroutput"><span class="identifier">x</span></code>
is equal to the value of <code class="computeroutput"><span class="identifier">pred</span><span class="special">(</span><span class="identifier">y</span><span class="special">)</span> <span class="special">?</span> <span class="identifier">new_value</span> <span class="special">:</span>
<span class="identifier">y</span></code> where <code class="computeroutput"><span class="identifier">y</span></code>
is the corresponding element in the original range.
</li>
<li class="listitem">
<span class="bold"><strong>Range Category:</strong></span><code class="computeroutput"><span class="identifier">ForwardRange</span></code>
</li>
<span class="bold"><strong>Range Category:</strong></span> <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a>
</li>
<li class="listitem">
<span class="bold"><strong>Range Return Type:</strong></span> <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">replaced_if_range</span><span class="special">&lt;</span><span class="identifier">typeof</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)&gt;</span></code>
</li>
<li class="listitem">
<span class="bold"><strong>Returned Range Category:</strong></span> The range
category of <code class="computeroutput"><span class="identifier">rng</span></code>.
</li>
</ul></div>
<div class="section" title="replaced_if example">
<div class="section">
<div class="titlepage"><div><div><h6 class="title">
<a name="range.reference.adaptors.adaptors_reference.replaced_if.replaced_if_example"></a><a class="link" href="replaced_if.html#range.reference.adaptors.adaptors_reference.replaced_if.replaced_if_example" title="replaced_if example">
replaced_if example</a>
<a name="range.reference.adaptors.reference.replaced_if.replaced_if_example"></a><a class="link" href="replaced_if.html#range.reference.adaptors.reference.replaced_if.replaced_if_example" title="replaced_if example">replaced_if
example</a>
</h6></div></div></div>
<p>
@ -159,7 +169,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="replaced.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="reversed.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="replaced.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="reversed.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,10 +2,10 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>reversed</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../adaptors_reference.html" title="Reference">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="replaced_if.html" title="replaced_if">
<link rel="next" href="sliced.html" title="sliced">
</head>
@ -13,22 +13,21 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="replaced_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="sliced.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="replaced_if.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="sliced.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="reversed">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.adaptors.adaptors_reference.reversed"></a><a class="link" href="reversed.html" title="reversed">
reversed</a>
<a name="range.reference.adaptors.reference.reversed"></a><a class="link" href="reversed.html" title="reversed">reversed</a>
</h5></div></div></div>
<div class="toc"><dl><dt><span class="section"><a href="reversed.html#range.reference.adaptors.adaptors_reference.reversed.reversed_example">
reversed example</a></span></dt></dl></div>
<div class="toc"><dl><dt><span class="section"><a href="reversed.html#range.reference.adaptors.reference.reversed.reversed_example">reversed
example</a></span></dt></dl></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
@ -76,17 +75,25 @@
</table></div>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<span class="bold"><strong>Returns:</strong></span> A range whose iterators behave
as if they were the original iterators wrapped in <code class="computeroutput"><span class="identifier">reverse_iterator</span></code>.
</li>
<span class="bold"><strong>Returns:</strong></span> A range whose iterators
behave as if they were the original iterators wrapped in <code class="computeroutput"><span class="identifier">reverse_iterator</span></code>.
</li>
<li class="listitem">
<span class="bold"><strong>Range Category:</strong></span><code class="computeroutput"><span class="identifier">BidirectionalRange</span></code>
</li>
<span class="bold"><strong>Range Category:</strong></span> <a class="link" href="../../../concepts/bidirectional_range.html" title="Bidirectional Range">Bidirectional
Range</a>
</li>
<li class="listitem">
<span class="bold"><strong>Range Return Type:</strong></span> <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">reversed_range</span><span class="special">&lt;</span><span class="identifier">typeof</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)&gt;</span></code>
</li>
<li class="listitem">
<span class="bold"><strong>Returned Range Category:</strong></span> The range
category of <code class="computeroutput"><span class="identifier">rng</span></code>.
</li>
</ul></div>
<div class="section" title="reversed example">
<div class="section">
<div class="titlepage"><div><div><h6 class="title">
<a name="range.reference.adaptors.adaptors_reference.reversed.reversed_example"></a><a class="link" href="reversed.html#range.reference.adaptors.adaptors_reference.reversed.reversed_example" title="reversed example">
reversed example</a>
<a name="range.reference.adaptors.reference.reversed.reversed_example"></a><a class="link" href="reversed.html#range.reference.adaptors.reference.reversed.reversed_example" title="reversed example">reversed
example</a>
</h6></div></div></div>
<p>
@ -134,7 +141,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="replaced_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="sliced.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="replaced_if.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="sliced.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,10 +2,10 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>sliced</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../adaptors_reference.html" title="Reference">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="reversed.html" title="reversed">
<link rel="next" href="strided.html" title="strided">
</head>
@ -13,22 +13,21 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="reversed.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="strided.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="reversed.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="strided.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="sliced">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.adaptors.adaptors_reference.sliced"></a><a class="link" href="sliced.html" title="sliced">
sliced</a>
<a name="range.reference.adaptors.reference.sliced"></a><a class="link" href="sliced.html" title="sliced">sliced</a>
</h5></div></div></div>
<div class="toc"><dl><dt><span class="section"><a href="sliced.html#range.reference.adaptors.adaptors_reference.sliced.sliced_example">
sliced example</a></span></dt></dl></div>
<div class="toc"><dl><dt><span class="section"><a href="sliced.html#range.reference.adaptors.reference.sliced.sliced_example">sliced
example</a></span></dt></dl></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
@ -79,24 +78,32 @@
</table></div>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<span class="bold"><strong>Precondition:</strong></span><code class="computeroutput"><span class="number">0</span>
<span class="special">&lt;=</span> <span class="identifier">n</span>
<span class="special">&amp;&amp;</span> <span class="identifier">n</span>
<span class="special">&lt;=</span> <span class="identifier">m</span>
<span class="special">&amp;&amp;</span> <span class="identifier">m</span>
<span class="special">&lt;</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code>
</li>
<span class="bold"><strong>Precondition:</strong></span> <code class="computeroutput"><span class="number">0</span>
<span class="special">&lt;=</span> <span class="identifier">n</span>
<span class="special">&amp;&amp;</span> <span class="identifier">n</span>
<span class="special">&lt;=</span> <span class="identifier">m</span>
<span class="special">&amp;&amp;</span> <span class="identifier">m</span>
<span class="special">&lt;</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code>
</li>
<li class="listitem">
<span class="bold"><strong>Returns:</strong></span><code class="computeroutput"><span class="identifier">make_range</span><span class="special">(</span><span class="identifier">rng</span><span class="special">,</span> <span class="identifier">n</span><span class="special">,</span> <span class="identifier">m</span><span class="special">)</span></code>
</li>
<span class="bold"><strong>Returns:</strong></span> <code class="computeroutput"><span class="identifier">make_range</span><span class="special">(</span><span class="identifier">rng</span><span class="special">,</span> <span class="identifier">n</span><span class="special">,</span> <span class="identifier">m</span><span class="special">)</span></code>
</li>
<li class="listitem">
<span class="bold"><strong>Range Category:</strong></span><code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
</li>
<span class="bold"><strong>Range Category:</strong></span> <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a>
</li>
<li class="listitem">
<span class="bold"><strong>Range Return Type:</strong></span> <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">sliced_range</span><span class="special">&lt;</span><span class="identifier">typeof</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)&gt;</span></code>
</li>
<li class="listitem">
<span class="bold"><strong>Returned Range Category:</strong></span> <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a>
</li>
</ul></div>
<div class="section" title="sliced example">
<div class="section">
<div class="titlepage"><div><div><h6 class="title">
<a name="range.reference.adaptors.adaptors_reference.sliced.sliced_example"></a><a class="link" href="sliced.html#range.reference.adaptors.adaptors_reference.sliced.sliced_example" title="sliced example">
sliced example</a>
<a name="range.reference.adaptors.reference.sliced.sliced_example"></a><a class="link" href="sliced.html#range.reference.adaptors.reference.sliced.sliced_example" title="sliced example">sliced
example</a>
</h6></div></div></div>
<p>
@ -144,7 +151,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="reversed.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="strided.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="reversed.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="strided.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,33 +2,32 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>strided</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../adaptors_reference.html" title="Reference">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="sliced.html" title="sliced">
<link rel="next" href="tokenized.html" title="tokenized">
<link rel="next" href="type_erased.html" title="type_erased">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="sliced.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="tokenized.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="sliced.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="type_erased.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="strided">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.adaptors.adaptors_reference.strided"></a><a class="link" href="strided.html" title="strided">
strided</a>
<a name="range.reference.adaptors.reference.strided"></a><a class="link" href="strided.html" title="strided">strided</a>
</h5></div></div></div>
<div class="toc"><dl><dt><span class="section"><a href="strided.html#range.reference.adaptors.adaptors_reference.strided.strided_example">
strided example</a></span></dt></dl></div>
<div class="toc"><dl><dt><span class="section"><a href="strided.html#range.reference.adaptors.reference.strided.strided_example">strided
example</a></span></dt></dl></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
@ -77,23 +76,26 @@
</table></div>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<span class="bold"><strong>Precondition:</strong></span><code class="computeroutput"><span class="number">0</span>
<span class="special">&lt;=</span> <span class="identifier">n</span>
<span class="special">&amp;&amp;</span> <span class="identifier">n</span>
<span class="special">&lt;</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code>
</li>
<span class="bold"><strong>Precondition:</strong></span> <code class="computeroutput"><span class="number">0</span>
<span class="special">&lt;=</span> <span class="identifier">n</span></code>.
</li>
<li class="listitem">
<span class="bold"><strong>Returns:</strong></span> A new range based on <code class="computeroutput"><span class="identifier">rng</span></code> where traversal is performed
in steps of <code class="computeroutput"><span class="identifier">n</span></code>.
</li>
<span class="bold"><strong>Returns:</strong></span> A new range based on <code class="computeroutput"><span class="identifier">rng</span></code> where traversal is performed
in steps of <code class="computeroutput"><span class="identifier">n</span></code>.
</li>
<li class="listitem">
<span class="bold"><strong>Range Category:</strong></span><code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
</li>
<span class="bold"><strong>Range Category:</strong></span> <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a>
</li>
<li class="listitem">
<span class="bold"><strong>Returned Range Category:</strong></span> The range
category of <code class="computeroutput"><span class="identifier">rng</span></code>.
</li>
</ul></div>
<div class="section" title="strided example">
<div class="section">
<div class="titlepage"><div><div><h6 class="title">
<a name="range.reference.adaptors.adaptors_reference.strided.strided_example"></a><a class="link" href="strided.html#range.reference.adaptors.adaptors_reference.strided.strided_example" title="strided example">
strided example</a>
<a name="range.reference.adaptors.reference.strided.strided_example"></a><a class="link" href="strided.html#range.reference.adaptors.reference.strided.strided_example" title="strided example">strided
example</a>
</h6></div></div></div>
<p>
@ -141,7 +143,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="sliced.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="tokenized.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="sliced.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="type_erased.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,30 +2,29 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>tokenized</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../adaptors_reference.html" title="Reference">
<link rel="prev" href="strided.html" title="strided">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="type_erased.html" title="type_erased">
<link rel="next" href="transformed.html" title="transformed">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="strided.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="transformed.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="type_erased.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="transformed.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="tokenized">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.adaptors.adaptors_reference.tokenized"></a><a class="link" href="tokenized.html" title="tokenized">
tokenized</a>
<a name="range.reference.adaptors.reference.tokenized"></a><a class="link" href="tokenized.html" title="tokenized">tokenized</a>
</h5></div></div></div>
<div class="informaltable"><table class="table">
<colgroup>
@ -89,42 +88,55 @@
</table></div>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<span class="bold"><strong>Precondition:</strong></span><div class="itemizedlist"><ul class="itemizedlist" type="circle">
<p class="simpara">
<span class="bold"><strong>Precondition:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="circle">
<li class="listitem">
Let <code class="computeroutput"><span class="identifier">T</span></code> denote <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">range_value</span><span class="special">&lt;</span><span class="identifier">decltype</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)&gt;::</span><span class="identifier">type</span></code>,
then <code class="computeroutput"><span class="identifier">regex</span></code> has
the type <code class="computeroutput"><span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span></code> or is implicitly convertible
to one of these types.
</li>
Let <code class="computeroutput"><span class="identifier">T</span></code> denote
<code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">range_value</span><span class="special">&lt;</span><span class="identifier">decltype</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)&gt;::</span><span class="identifier">type</span></code>,
then <code class="computeroutput"><span class="identifier">regex</span></code> has
the type <code class="computeroutput"><span class="identifier">basic_regex</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span></code> or is implicitly convertible
to one of these types.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">i</span></code> has the type
<code class="computeroutput"><span class="keyword">int</span></code>.
</li>
<code class="computeroutput"><span class="identifier">i</span></code> has the type
<code class="computeroutput"><span class="keyword">int</span></code>.
</li>
<li class="listitem">
the <code class="computeroutput"><span class="identifier">value_type</span></code>
of <code class="computeroutput"><span class="identifier">rndRng</span></code> is <code class="computeroutput"><span class="keyword">int</span></code>.
</li>
the <code class="computeroutput"><span class="identifier">value_type</span></code>
of <code class="computeroutput"><span class="identifier">rndRng</span></code> is
<code class="computeroutput"><span class="keyword">int</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">flags</span></code> has the type
<code class="computeroutput"><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">syntax_option_type</span></code>.
</li>
<code class="computeroutput"><span class="identifier">flags</span></code> has the
type <code class="computeroutput"><span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">syntax_option_type</span></code>.
</li>
</ul></div>
</li>
<li class="listitem">
<span class="bold"><strong>Returns:</strong></span> A range whose iterators behave
as if they were the original iterators wrapped in <code class="computeroutput"><span class="identifier">regex_token_iterator</span></code>.
The first iterator in the range would be constructed by forwarding
all the arguments of <code class="computeroutput"><span class="identifier">tokenized</span><span class="special">()</span></code> to the <code class="computeroutput"><span class="identifier">regex_token_iterator</span></code>
constructor.
</li>
<span class="bold"><strong>Returns:</strong></span> A range whose iterators
behave as if they were the original iterators wrapped in <code class="computeroutput"><span class="identifier">regex_token_iterator</span></code>. The first
iterator in the range would be constructed by forwarding all the
arguments of <code class="computeroutput"><span class="identifier">tokenized</span><span class="special">()</span></code> to the <code class="computeroutput"><span class="identifier">regex_token_iterator</span></code>
constructor.
</li>
<li class="listitem">
<span class="bold"><strong>Throws:</strong></span> Whatever constructing and
copying equivalent <code class="computeroutput"><span class="identifier">regex_token_iterator</span></code>s
might throw.
</li>
<span class="bold"><strong>Throws:</strong></span> Whatever constructing and
copying equivalent <code class="computeroutput"><span class="identifier">regex_token_iterator</span></code>s
might throw.
</li>
<li class="listitem">
<span class="bold"><strong>Range Category:</strong></span><code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
</li>
<span class="bold"><strong>Range Category:</strong></span> <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a>
</li>
<li class="listitem">
<span class="bold"><strong>Range Return Type:</strong></span> <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">tokenized_range</span><span class="special">&lt;</span><span class="identifier">typeof</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)&gt;</span></code>
</li>
<li class="listitem">
<span class="bold"><strong>Returned Range Category:</strong></span> <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a>
</li>
</ul></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
@ -137,7 +149,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="strided.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="transformed.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="type_erased.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="transformed.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,10 +2,10 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>transformed</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../adaptors_reference.html" title="Reference">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="tokenized.html" title="tokenized">
<link rel="next" href="uniqued.html" title="uniqued">
</head>
@ -13,22 +13,21 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="tokenized.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="uniqued.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="tokenized.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="uniqued.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="transformed">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.adaptors.adaptors_reference.transformed"></a><a class="link" href="transformed.html" title="transformed">
transformed</a>
<a name="range.reference.adaptors.reference.transformed"></a><a class="link" href="transformed.html" title="transformed">transformed</a>
</h5></div></div></div>
<div class="toc"><dl><dt><span class="section"><a href="transformed.html#range.reference.adaptors.adaptors_reference.transformed.transformed_example">
transformed example</a></span></dt></dl></div>
<div class="toc"><dl><dt><span class="section"><a href="transformed.html#range.reference.adaptors.reference.transformed.transformed_example">transformed
example</a></span></dt></dl></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
@ -77,26 +76,37 @@
</table></div>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<span class="bold"><strong>Precondition:</strong></span> The <code class="computeroutput"><span class="identifier">value_type</span></code>
of the range is convertible to the argument type of <code class="computeroutput"><span class="identifier">fun</span></code>.
</li>
<span class="bold"><strong>Precondition:</strong></span> The <code class="computeroutput"><span class="identifier">value_type</span></code> of the range is convertible
to the argument type of <code class="computeroutput"><span class="identifier">fun</span></code>.
</li>
<li class="listitem">
<span class="bold"><strong>Postcondition:</strong></span> For all elements <code class="computeroutput"><span class="identifier">x</span></code> in the returned range, <code class="computeroutput"><span class="identifier">x</span></code> is the result of <code class="computeroutput"><span class="identifier">fun</span><span class="special">(</span><span class="identifier">y</span><span class="special">)</span></code>
where <code class="computeroutput"><span class="identifier">y</span></code> is the corresponding
element in the original range.
</li>
<span class="bold"><strong>Postcondition:</strong></span> For all elements
<code class="computeroutput"><span class="identifier">x</span></code> in the returned
range, <code class="computeroutput"><span class="identifier">x</span></code> is the result
of <code class="computeroutput"><span class="identifier">fun</span><span class="special">(</span><span class="identifier">y</span><span class="special">)</span></code>
where <code class="computeroutput"><span class="identifier">y</span></code> is the corresponding
element in the original range.
</li>
<li class="listitem">
<span class="bold"><strong>Throws:</strong></span> Whatever the copy-constructor
of <code class="computeroutput"><span class="identifier">fun</span></code> might throw.
</li>
<span class="bold"><strong>Throws:</strong></span> Whatever the copy-constructor
of <code class="computeroutput"><span class="identifier">fun</span></code> might throw.
</li>
<li class="listitem">
<span class="bold"><strong>Range Category:</strong></span><code class="computeroutput"><span class="identifier">SinglePassRange</span></code>
</li>
<span class="bold"><strong>Range Category:</strong></span> <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a>
</li>
<li class="listitem">
<span class="bold"><strong>Range Return Type:</strong></span> <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">transformed_range</span><span class="special">&lt;</span><span class="identifier">typeof</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)&gt;</span></code>
</li>
<li class="listitem">
<span class="bold"><strong>Returned Range Category:</strong></span> The range
category of <code class="computeroutput"><span class="identifier">rng</span></code>.
</li>
</ul></div>
<div class="section" title="transformed example">
<div class="section">
<div class="titlepage"><div><div><h6 class="title">
<a name="range.reference.adaptors.adaptors_reference.transformed.transformed_example"></a><a class="link" href="transformed.html#range.reference.adaptors.adaptors_reference.transformed.transformed_example" title="transformed example">
transformed example</a>
<a name="range.reference.adaptors.reference.transformed.transformed_example"></a><a class="link" href="transformed.html#range.reference.adaptors.reference.transformed.transformed_example" title="transformed example">transformed
example</a>
</h6></div></div></div>
<p>
@ -150,7 +160,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="tokenized.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="uniqued.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="tokenized.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="uniqued.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,305 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>type_erased</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="strided.html" title="strided">
<link rel="next" href="tokenized.html" title="tokenized">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="strided.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="tokenized.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.adaptors.reference.type_erased"></a><a class="link" href="type_erased.html" title="type_erased">type_erased</a>
</h5></div></div></div>
<div class="toc"><dl><dt><span class="section"><a href="type_erased.html#range.reference.adaptors.reference.type_erased.type_erased_example">type-erased
example</a></span></dt></dl></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Syntax
</p>
</th>
<th>
<p>
Code
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
Pipe
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">rng</span> <span class="special">|</span>
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">type_erased</span><span class="special">&lt;</span><span class="identifier">Value</span><span class="special">,</span>
<span class="identifier">Traversal</span><span class="special">,</span>
<span class="identifier">Reference</span><span class="special">,</span>
<span class="identifier">Difference</span><span class="special">,</span>
<span class="identifier">Buffer</span><span class="special">&gt;()</span></code>
</p>
</td>
</tr>
<tr>
<td>
<p>
Function
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">type_erase</span><span class="special">(</span><span class="identifier">rng</span><span class="special">,</span>
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">type_erased</span><span class="special">&lt;</span><span class="identifier">Value</span><span class="special">,</span>
<span class="identifier">Traversal</span><span class="special">,</span>
<span class="identifier">Reference</span><span class="special">,</span>
<span class="identifier">Difference</span><span class="special">,</span>
<span class="identifier">Buffer</span><span class="special">&gt;)</span></code>
</p>
</td>
</tr>
</tbody>
</table></div>
<p>
Please note that it is frequently unnecessary to use the <code class="computeroutput"><span class="identifier">type_erased</span></code> adaptor. It is often better
to use the implicit conversion to <code class="computeroutput"><span class="identifier">any_range</span></code>.
</p>
<p>
Let <code class="computeroutput"><span class="identifier">Rng</span></code> be the type of
<code class="computeroutput"><span class="identifier">rng</span></code>.
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<p class="simpara">
<span class="bold"><strong>Template parameters:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="circle">
<li class="listitem">
<code class="computeroutput"><span class="identifier">Value</span></code> is the
<code class="computeroutput"><span class="identifier">value_type</span></code> for
the <code class="computeroutput"><span class="identifier">any_range</span></code>.
If this is set to boost::use_default, <code class="computeroutput"><span class="identifier">Value</span></code>
will be calculated from the range type when the adaptor is applied.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Traversal</span></code> is
the tag used to identify the traversal of the resultant range.
Frequently it is desireable to set a traversal category lower
than the source container or range to maximize the number of
ranges that can convert to the <code class="computeroutput"><span class="identifier">any_range</span></code>.
If this is left as boost::use_default then <code class="computeroutput"><span class="identifier">Traversal</span></code>
will be <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">iterator_traversal</span><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">Rng</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Reference</span></code> is
the <code class="computeroutput"><span class="identifier">reference</span></code>
for the <code class="computeroutput"><span class="identifier">any_range</span></code>.
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">use_default</span></code> will equate to
<code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">range_reference</span><span class="special">&lt;</span><span class="identifier">Rng</span><span class="special">&gt;::</span><span class="identifier">type</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Difference</span></code> is
the <code class="computeroutput"><span class="identifier">difference_type</span></code>
for the any_range. <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">use_default</span></code>
will equate to <code class="computeroutput"><span class="keyword">typename</span>
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">range_difference</span><span class="special">&lt;</span><span class="identifier">Rng</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Buffer</span></code> is the
storage used to allocate the underlying iterator wrappers. This
can typically be ignored, but is available as a template parameter
for customization. Buffer must be a model of the <code class="computeroutput"><span class="identifier">AnyIteratorBufferConcept</span></code>.
</li>
</ul></div>
</li>
<li class="listitem">
<span class="bold"><strong>Precondition:</strong></span> <code class="computeroutput"><span class="identifier">Traversal</span></code>
is one of <code class="computeroutput"><span class="special">{</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">use_default</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">single_pass_traversal_tag</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">forward_traversal_tag</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">bidirectional_traversal_tag</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">random_access_traversal_tag</span>
<span class="special">}</span></code>
</li>
<li class="listitem">
<span class="bold"><strong>Returns:</strong></span> The returned value is the
same as <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">any_range_type_generator</span><span class="special">&lt;</span> <span class="identifier">Rng</span><span class="special">,</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Traversal</span><span class="special">,</span> <span class="identifier">Reference</span><span class="special">,</span> <span class="identifier">Difference</span><span class="special">,</span> <span class="identifier">Buffer</span>
<span class="special">&gt;</span></code> that represents <code class="computeroutput"><span class="identifier">rng</span></code> in a type-erased manner.
</li>
<li class="listitem">
<span class="bold"><strong>Range Category:</strong></span> <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a>
</li>
<li class="listitem">
<span class="bold"><strong>Returned Range Category:</strong></span> if <code class="computeroutput"><span class="identifier">Traversal</span></code> was specified as <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">use_default</span></code> then <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">iterator_traversal</span><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">Rng</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">type</span></code>,
otherwise <code class="computeroutput"><span class="identifier">Traversal</span></code>.
</li>
</ul></div>
<a name="range.reference.adaptors.reference.type_erased.anyiteratorbufferconcept"></a><h6>
<a name="id677095"></a>
<a class="link" href="type_erased.html#range.reference.adaptors.reference.type_erased.anyiteratorbufferconcept">AnyIteratorBufferConcept</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">class</span> <span class="identifier">AnyIteratorBufferConcept</span>
<span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
<span class="identifier">AnyIteratorBufferConcept</span><span class="special">();</span>
<span class="special">~</span><span class="identifier">AnyIteratorBufferConcept</span><span class="special">();</span>
<span class="comment">// bytes is the requested size to allocate. This function
</span> <span class="comment">// must return a pointer to an adequate area of memory.
</span> <span class="comment">// throws: bad_alloc
</span> <span class="comment">//
</span> <span class="comment">// The buffer will only ever have zero or one
</span> <span class="comment">// outstanding memory allocations.
</span> <span class="keyword">void</span><span class="special">*</span> <span class="identifier">allocate</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">bytes</span><span class="special">);</span>
<span class="comment">// deallocate this buffer
</span> <span class="keyword">void</span> <span class="identifier">deallocate</span><span class="special">();</span>
<span class="special">};</span>
</pre>
<p>
</p>
<div class="section">
<div class="titlepage"><div><div><h6 class="title">
<a name="range.reference.adaptors.reference.type_erased.type_erased_example"></a><a class="link" href="type_erased.html#range.reference.adaptors.reference.type_erased.type_erased_example" title="type-erased example">type-erased
example</a>
</h6></div></div></div>
<p>
</p>
<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">adaptor</span><span class="special">/</span><span class="identifier">type_erased</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">copy</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">assign</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">foreach</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">algorithm</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">iostream</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">list</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">vector</span><span class="special">&gt;</span>
<span class="comment">// The client interface from an OO perspective merely requires a sequence
</span><span class="comment">// of integers that can be forward traversed
</span><span class="keyword">typedef</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">any_range</span><span class="special">&lt;</span>
<span class="keyword">int</span>
<span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">forward_traversal_tag</span>
<span class="special">,</span> <span class="keyword">int</span>
<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">ptrdiff_t</span>
<span class="special">&gt;</span> <span class="identifier">integer_range</span><span class="special">;</span>
<span class="keyword">namespace</span> <span class="identifier">server</span>
<span class="special">{</span>
<span class="keyword">void</span> <span class="identifier">display_integers</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">integer_range</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">)</span>
<span class="special">{</span>
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">copy</span><span class="special">(</span><span class="identifier">rng</span><span class="special">,</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream_iterator</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span><span class="special">,</span> <span class="string">","</span><span class="special">));</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span>
<span class="keyword">namespace</span> <span class="identifier">client</span>
<span class="special">{</span>
<span class="keyword">void</span> <span class="identifier">run</span><span class="special">()</span>
<span class="special">{</span>
<span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">assign</span><span class="special">;</span>
<span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">;</span>
<span class="comment">// Under most conditions one would simply use an appropriate
</span> <span class="comment">// any_range as a function parameter. The type_erased adaptor
</span> <span class="comment">// is often superfluous. However because the type_erased
</span> <span class="comment">// adaptor is applied to a range, we can use default template
</span> <span class="comment">// arguments that are generated in conjunction with the
</span> <span class="comment">// range type to which we are applying the adaptor.
</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">input</span><span class="special">;</span>
<span class="identifier">input</span> <span class="special">+=</span> <span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">,</span><span class="number">4</span><span class="special">,</span><span class="number">5</span><span class="special">;</span>
<span class="comment">// Note that this call is to a non-template function
</span> <span class="identifier">server</span><span class="special">::</span><span class="identifier">display_integers</span><span class="special">(</span><span class="identifier">input</span><span class="special">);</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">list</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">input2</span><span class="special">;</span>
<span class="identifier">input2</span> <span class="special">+=</span> <span class="number">6</span><span class="special">,</span><span class="number">7</span><span class="special">,</span><span class="number">8</span><span class="special">,</span><span class="number">9</span><span class="special">,</span><span class="number">10</span><span class="special">;</span>
<span class="comment">// Note that this call is to the same non-tempate function
</span> <span class="identifier">server</span><span class="special">::</span><span class="identifier">display_integers</span><span class="special">(</span><span class="identifier">input2</span><span class="special">);</span>
<span class="identifier">input2</span><span class="special">.</span><span class="identifier">clear</span><span class="special">();</span>
<span class="identifier">input2</span> <span class="special">+=</span> <span class="number">11</span><span class="special">,</span><span class="number">12</span><span class="special">,</span><span class="number">13</span><span class="special">,</span><span class="number">14</span><span class="special">,</span><span class="number">15</span><span class="special">;</span>
<span class="comment">// Calling using the adaptor looks like this:
</span> <span class="comment">// Notice that here I have a type_erased that would be a
</span> <span class="comment">// bidirectional_traversal_tag, but this is convertible
</span> <span class="comment">// to the forward_traversal_tag equivalent hence this
</span> <span class="comment">// works.
</span> <span class="identifier">server</span><span class="special">::</span><span class="identifier">display_integers</span><span class="special">(</span><span class="identifier">input2</span> <span class="special">|</span> <span class="identifier">type_erased</span><span class="special">&lt;&gt;());</span>
<span class="comment">// However we may simply wish to define an adaptor that
</span> <span class="comment">// takes a range and makes it into an appropriate
</span> <span class="comment">// forward_traversal any_range...
</span> <span class="keyword">typedef</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">type_erased</span><span class="special">&lt;</span>
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">use_default</span>
<span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">forward_traversal_tag</span>
<span class="special">&gt;</span> <span class="identifier">type_erased_forward</span><span class="special">;</span>
<span class="comment">// This adaptor can turn other containers with different
</span> <span class="comment">// value_types and reference_types into the appropriate
</span> <span class="comment">// any_range.
</span>
<span class="identifier">server</span><span class="special">::</span><span class="identifier">display_integers</span><span class="special">(</span><span class="identifier">input2</span> <span class="special">|</span> <span class="identifier">type_erased_forward</span><span class="special">());</span>
<span class="special">}</span>
<span class="special">}</span>
<span class="keyword">int</span> <span class="identifier">main</span><span class="special">(</span><span class="keyword">int</span> <span class="identifier">argc</span><span class="special">,</span> <span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span> <span class="identifier">argv</span><span class="special">[])</span>
<span class="special">{</span>
<span class="identifier">client</span><span class="special">::</span><span class="identifier">run</span><span class="special">();</span>
<span class="keyword">return</span> <span class="number">0</span><span class="special">;</span>
<span class="special">}</span>
</pre>
<p>
</p>
</div>
<p>
This would produce the output:
</p>
<pre class="programlisting"><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">,</span><span class="number">4</span><span class="special">,</span><span class="number">5</span>
<span class="number">6</span><span class="special">,</span><span class="number">7</span><span class="special">,</span><span class="number">8</span><span class="special">,</span><span class="number">9</span><span class="special">,</span><span class="number">10</span>
<span class="number">11</span><span class="special">,</span><span class="number">12</span><span class="special">,</span><span class="number">13</span><span class="special">,</span><span class="number">14</span><span class="special">,</span><span class="number">15</span>
<span class="number">11</span><span class="special">,</span><span class="number">12</span><span class="special">,</span><span class="number">13</span><span class="special">,</span><span class="number">14</span><span class="special">,</span><span class="number">15</span>
</pre>
<p>
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="strided.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="tokenized.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,33 +2,32 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>uniqued</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../adaptors_reference.html" title="Reference">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="transformed.html" title="transformed">
<link rel="next" href="../../algorithms.html" title="Range Algorithm">
<link rel="next" href="../../algorithms.html" title="Range Algorithms">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="transformed.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../algorithms.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="transformed.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../../algorithms.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="uniqued">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.adaptors.adaptors_reference.uniqued"></a><a class="link" href="uniqued.html" title="uniqued">
uniqued</a>
<a name="range.reference.adaptors.reference.uniqued"></a><a class="link" href="uniqued.html" title="uniqued">uniqued</a>
</h5></div></div></div>
<div class="toc"><dl><dt><span class="section"><a href="uniqued.html#range.reference.adaptors.adaptors_reference.uniqued.uniqued_example">
uniqued example</a></span></dt></dl></div>
<div class="toc"><dl><dt><span class="section"><a href="uniqued.html#range.reference.adaptors.reference.uniqued.uniqued_example">uniqued
example</a></span></dt></dl></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
@ -76,21 +75,30 @@
</table></div>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<span class="bold"><strong>Precondition:</strong></span> The <code class="computeroutput"><span class="identifier">value_type</span></code>
of the range is comparable with <code class="computeroutput"><span class="keyword">operator</span><span class="special">==()</span></code>.
</li>
<span class="bold"><strong>Precondition:</strong></span> The <code class="computeroutput"><span class="identifier">value_type</span></code> of the range is comparable
with <code class="computeroutput"><span class="keyword">operator</span><span class="special">==()</span></code>.
</li>
<li class="listitem">
<span class="bold"><strong>Postcondition:</strong></span> For all adjacent elements
<code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">]</span></code> in the returned range, <code class="computeroutput"><span class="identifier">x</span><span class="special">==</span><span class="identifier">y</span></code> is false.
</li>
<span class="bold"><strong>Postcondition:</strong></span> For all adjacent
elements <code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">]</span></code> in the returned range, <code class="computeroutput"><span class="identifier">x</span><span class="special">==</span><span class="identifier">y</span></code> is false.
</li>
<li class="listitem">
<span class="bold"><strong>Range Category:</strong></span><code class="computeroutput"><span class="identifier">ForwardRange</span></code>
</li>
<span class="bold"><strong>Range Category:</strong></span> <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a>
</li>
<li class="listitem">
<span class="bold"><strong>Range Return Type:</strong></span> <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">uniqued_range</span><span class="special">&lt;</span><span class="identifier">typeof</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)&gt;</span></code>
</li>
<li class="listitem">
<span class="bold"><strong>Returned Range Category:</strong></span> The minimum
of the range concept of <code class="computeroutput"><span class="identifier">rng</span></code>
and <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward Range</a>.
</li>
</ul></div>
<div class="section" title="uniqued example">
<div class="section">
<div class="titlepage"><div><div><h6 class="title">
<a name="range.reference.adaptors.adaptors_reference.uniqued.uniqued_example"></a><a class="link" href="uniqued.html#range.reference.adaptors.adaptors_reference.uniqued.uniqued_example" title="uniqued example">
uniqued example</a>
<a name="range.reference.adaptors.reference.uniqued.uniqued_example"></a><a class="link" href="uniqued.html#range.reference.adaptors.reference.uniqued.uniqued_example" title="uniqued example">uniqued
example</a>
</h6></div></div></div>
<p>
@ -136,7 +144,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="transformed.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adaptors_reference.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../algorithms.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="transformed.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../../algorithms.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,46 +1,43 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm</title>
<link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<title>Range Algorithms</title>
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="adaptors/adaptors_reference/uniqued.html" title="uniqued">
<link rel="next" href="algorithms/range_algorithm_introduction.html" title="Introduction and motivation">
<link rel="prev" href="adaptors/reference/uniqued.html" title="uniqued">
<link rel="next" href="algorithms/introduction.html" title="Introduction and motivation">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="adaptors/adaptors_reference/uniqued.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="algorithms/range_algorithm_introduction.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="adaptors/reference/uniqued.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="algorithms/introduction.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm">
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="range.reference.algorithms"></a><a class="link" href="algorithms.html" title="Range Algorithm"> Range Algorithm</a>
<a name="range.reference.algorithms"></a><a class="link" href="algorithms.html" title="Range Algorithms">Range Algorithms</a>
</h3></div></div></div>
<div class="toc"><dl>
<dt><span class="section"><a href="algorithms/range_algorithm_introduction.html">
Introduction and motivation</a></span></dt>
<dt><span class="section"><a href="algorithms/range_algorithm_mutating_algorithms.html">
Mutating algorithms</a></span></dt>
<dt><span class="section"><a href="algorithms/range_algorithm_non_mutating_algorithms.html">
Non-mutating algorithms</a></span></dt>
<dt><span class="section"><a href="algorithms/set_algorithms.html"> Set algorithms</a></span></dt>
<dt><span class="section"><a href="algorithms/heap_algorithms.html"> Heap algorithms</a></span></dt>
<dt><span class="section"><a href="algorithms/permutation_algorithms.html">
Permutation algorithms</a></span></dt>
<dt><span class="section"><a href="algorithms/range_algorithm_new_algorithms.html">
New algorithms</a></span></dt>
<dt><span class="section"><a href="algorithms/range_numeric.html"> Numeric
<dt><span class="section"><a href="algorithms/introduction.html">Introduction
and motivation</a></span></dt>
<dt><span class="section"><a href="algorithms/mutating.html">Mutating algorithms</a></span></dt>
<dt><span class="section"><a href="algorithms/non_mutating.html">Non-mutating
algorithms</a></span></dt>
<dt><span class="section"><a href="algorithms/set.html">Set algorithms</a></span></dt>
<dt><span class="section"><a href="algorithms/heap.html">Heap algorithms</a></span></dt>
<dt><span class="section"><a href="algorithms/permutation.html">Permutation
algorithms</a></span></dt>
<dt><span class="section"><a href="algorithms/new.html">New algorithms</a></span></dt>
<dt><span class="section"><a href="algorithms/numeric.html">Numeric algorithms</a></span></dt>
</dl></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
@ -53,7 +50,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="adaptors/adaptors_reference/uniqued.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="algorithms/range_algorithm_introduction.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="adaptors/reference/uniqued.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="algorithms/introduction.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,49 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Heap algorithms</title>
<link rel="stylesheet" href="../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../algorithms.html" title="Range Algorithms">
<link rel="prev" href="set/set_symmetric_difference.html" title="set_symmetric_difference">
<link rel="next" href="heap/push_heap.html" title="push_heap">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="set/set_symmetric_difference.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithms.html"><img src="../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="heap/push_heap.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="range.reference.algorithms.heap"></a><a class="link" href="heap.html" title="Heap algorithms">Heap algorithms</a>
</h4></div></div></div>
<div class="toc"><dl>
<dt><span class="section"><a href="heap/push_heap.html">push_heap</a></span></dt>
<dt><span class="section"><a href="heap/pop_heap.html">pop_heap</a></span></dt>
<dt><span class="section"><a href="heap/make_heap.html">make_heap</a></span></dt>
<dt><span class="section"><a href="heap/sort_heap.html">sort_heap</a></span></dt>
</dl></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="set/set_symmetric_difference.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithms.html"><img src="../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="heap/push_heap.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,10 +2,10 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>make_heap</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../heap_algorithms.html" title="Heap algorithms">
<link rel="up" href="../heap.html" title="Heap algorithms">
<link rel="prev" href="pop_heap.html" title="pop_heap">
<link rel="next" href="sort_heap.html" title="sort_heap">
</head>
@ -13,23 +13,22 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="pop_heap.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="sort_heap.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="pop_heap.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="sort_heap.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="make_heap">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.heap_algorithms.make_heap"></a><a class="link" href="make_heap.html" title="make_heap">
make_heap</a>
<a name="range.reference.algorithms.heap.make_heap"></a><a class="link" href="make_heap.html" title="make_heap">make_heap</a>
</h5></div></div></div>
<a name="range.reference.algorithms.heap_algorithms.make_heap.prototype"></a><h6>
<a name="id3099191"></a>
<a class="link" href="make_heap.html#range.reference.algorithms.heap_algorithms.make_heap.prototype">Prototype</a>
<a name="range.reference.algorithms.heap.make_heap.prototype"></a><h6>
<a name="id741272"></a>
<a class="link" href="make_heap.html#range.reference.algorithms.heap.make_heap.prototype">Prototype</a>
</h6>
<p>
@ -48,9 +47,9 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.heap_algorithms.make_heap.description"></a><h6>
<a name="id3099573"></a>
<a class="link" href="make_heap.html#range.reference.algorithms.heap_algorithms.make_heap.description">Description</a>
<a name="range.reference.algorithms.heap.make_heap.description"></a><h6>
<a name="id741648"></a>
<a class="link" href="make_heap.html#range.reference.algorithms.heap.make_heap.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">make_heap</span></code> turns <code class="computeroutput"><span class="identifier">rng</span></code> into a heap.
@ -60,67 +59,67 @@
by evaluating <code class="computeroutput"><span class="identifier">pred</span></code> in
the predicate versions.
</p>
<a name="range.reference.algorithms.heap_algorithms.make_heap.definition"></a><h6>
<a name="id3099653"></a>
<a class="link" href="make_heap.html#range.reference.algorithms.heap_algorithms.make_heap.definition">Definition</a>
<a name="range.reference.algorithms.heap.make_heap.definition"></a><h6>
<a name="id741722"></a>
<a class="link" href="make_heap.html#range.reference.algorithms.heap.make_heap.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">heap_algorithm</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.heap_algorithms.make_heap.requirements"></a><h6>
<a name="id3099726"></a>
<a class="link" href="make_heap.html#range.reference.algorithms.heap_algorithms.make_heap.requirements">Requirements</a>
<a name="range.reference.algorithms.heap.make_heap.requirements"></a><h6>
<a name="id741791"></a>
<a class="link" href="make_heap.html#range.reference.algorithms.heap.make_heap.requirements">Requirements</a>
</h6>
<p>
<span class="bold"><strong>For the non-predicate versions:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
mutable.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a model of the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a model of the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>.
</li>
<li class="listitem">
The ordering of objects of type <code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a <span class="bold"><strong><span class="emphasis"><em>strict weak ordering</em></span></strong></span>,
as defined in the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
requirements.
</li>
The ordering of objects of type <code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a <span class="bold"><strong><span class="emphasis"><em>strict weak ordering</em></span></strong></span>,
as defined in the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
requirements.
</li>
</ul></div>
<p>
<span class="bold"><strong>For the predicate versions:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
mutable.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Compare</span></code> is a model
of the <code class="computeroutput"><span class="identifier">StrictWeakOrderingConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">Compare</span></code> is a model
of the <code class="computeroutput"><span class="identifier">StrictWeakOrderingConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is convertible to both of <code class="computeroutput"><span class="identifier">Compare</span></code>'s
argument types.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is convertible to both of <code class="computeroutput"><span class="identifier">Compare</span></code>'s
argument types.
</li>
</ul></div>
<a name="range.reference.algorithms.heap_algorithms.make_heap.complexity"></a><h6>
<a name="id3099962"></a>
<a class="link" href="make_heap.html#range.reference.algorithms.heap_algorithms.make_heap.complexity">Complexity</a>
<a name="range.reference.algorithms.heap.make_heap.complexity"></a><h6>
<a name="id742039"></a>
<a class="link" href="make_heap.html#range.reference.algorithms.heap.make_heap.complexity">Complexity</a>
</h6>
<p>
Linear. At most <code class="computeroutput"><span class="number">3</span> <span class="special">*</span>
@ -138,7 +137,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="pop_heap.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="sort_heap.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="pop_heap.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="sort_heap.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,10 +2,10 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>pop_heap</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../heap_algorithms.html" title="Heap algorithms">
<link rel="up" href="../heap.html" title="Heap algorithms">
<link rel="prev" href="push_heap.html" title="push_heap">
<link rel="next" href="make_heap.html" title="make_heap">
</head>
@ -13,23 +13,22 @@
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="push_heap.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="make_heap.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="push_heap.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="make_heap.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="pop_heap">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.heap_algorithms.pop_heap"></a><a class="link" href="pop_heap.html" title="pop_heap">
pop_heap</a>
<a name="range.reference.algorithms.heap.pop_heap"></a><a class="link" href="pop_heap.html" title="pop_heap">pop_heap</a>
</h5></div></div></div>
<a name="range.reference.algorithms.heap_algorithms.pop_heap.prototype"></a><h6>
<a name="id3098182"></a>
<a class="link" href="pop_heap.html#range.reference.algorithms.heap_algorithms.pop_heap.prototype">Prototype</a>
<a name="range.reference.algorithms.heap.pop_heap.prototype"></a><h6>
<a name="id740266"></a>
<a class="link" href="pop_heap.html#range.reference.algorithms.heap.pop_heap.prototype">Prototype</a>
</h6>
<p>
@ -48,9 +47,9 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.heap_algorithms.pop_heap.description"></a><h6>
<a name="id3098562"></a>
<a class="link" href="pop_heap.html#range.reference.algorithms.heap_algorithms.pop_heap.description">Description</a>
<a name="range.reference.algorithms.heap.pop_heap.description"></a><h6>
<a name="id740642"></a>
<a class="link" href="pop_heap.html#range.reference.algorithms.heap.pop_heap.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">pop_heap</span></code> removes the
@ -62,77 +61,79 @@
by evaluating <code class="computeroutput"><span class="identifier">pred</span></code> in
the predicate versions.
</p>
<a name="range.reference.algorithms.heap_algorithms.pop_heap.definition"></a><h6>
<a name="id3098722"></a>
<a class="link" href="pop_heap.html#range.reference.algorithms.heap_algorithms.pop_heap.definition">Definition</a>
<a name="range.reference.algorithms.heap.pop_heap.definition"></a><h6>
<a name="id740796"></a>
<a class="link" href="pop_heap.html#range.reference.algorithms.heap.pop_heap.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">heap_algorithm</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.heap_algorithms.pop_heap.requirements"></a><h6>
<a name="id3098795"></a>
<a class="link" href="pop_heap.html#range.reference.algorithms.heap_algorithms.pop_heap.requirements">Requirements</a>
<a name="range.reference.algorithms.heap.pop_heap.requirements"></a><h6>
<a name="id740866"></a>
<a class="link" href="pop_heap.html#range.reference.algorithms.heap.pop_heap.requirements">Requirements</a>
</h6>
<p>
<span class="bold"><strong>For the non-predicate versions:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
mutable.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a model of the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a model of the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>.
</li>
<li class="listitem">
The ordering of objects of type <code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a <span class="bold"><strong><span class="emphasis"><em>strict weak ordering</em></span></strong></span>,
as defined in the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
requirements.
</li>
The ordering of objects of type <code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a <span class="bold"><strong><span class="emphasis"><em>strict weak ordering</em></span></strong></span>,
as defined in the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
requirements.
</li>
</ul></div>
<p>
<span class="bold"><strong>For the predicate versions:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
mutable.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Compare</span></code> is a model
of the <code class="computeroutput"><span class="identifier">StrictWeakOrderingConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">Compare</span></code> is a model
of the <code class="computeroutput"><span class="identifier">StrictWeakOrderingConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is convertible to both of <code class="computeroutput"><span class="identifier">Compare</span></code>'s
argument types.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is convertible to both of <code class="computeroutput"><span class="identifier">Compare</span></code>'s
argument types.
</li>
</ul></div>
<a name="range.reference.algorithms.heap_algorithms.pop_heap.precondition_"></a><h6>
<a name="id3099031"></a>
<a class="link" href="pop_heap.html#range.reference.algorithms.heap_algorithms.pop_heap.precondition_">Precondition:</a>
<a name="range.reference.algorithms.heap.pop_heap.precondition_"></a><h6>
<a name="id741114"></a>
<a class="link" href="pop_heap.html#range.reference.algorithms.heap.pop_heap.precondition_">Precondition:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem"><code class="computeroutput"><span class="special">!</span><span class="identifier">empty</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code></li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">rng</span></code> is a heap.
</li>
<code class="computeroutput"><span class="special">!</span><span class="identifier">empty</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code>
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">rng</span></code> is a heap.
</li>
</ul></div>
<a name="range.reference.algorithms.heap_algorithms.pop_heap.complexity"></a><h6>
<a name="id3099102"></a>
<a class="link" href="pop_heap.html#range.reference.algorithms.heap_algorithms.pop_heap.complexity">Complexity</a>
<a name="range.reference.algorithms.heap.pop_heap.complexity"></a><h6>
<a name="id741189"></a>
<a class="link" href="pop_heap.html#range.reference.algorithms.heap.pop_heap.complexity">Complexity</a>
</h6>
<p>
Logarithmic. At most <code class="computeroutput"><span class="number">2</span> <span class="special">*</span>
@ -150,7 +151,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="push_heap.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="make_heap.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="push_heap.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="make_heap.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,34 +2,33 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>push_heap</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../heap_algorithms.html" title="Heap algorithms">
<link rel="prev" href="../heap_algorithms.html" title="Heap algorithms">
<link rel="up" href="../heap.html" title="Heap algorithms">
<link rel="prev" href="../heap.html" title="Heap algorithms">
<link rel="next" href="pop_heap.html" title="pop_heap">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../heap_algorithms.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="pop_heap.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="../heap.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="pop_heap.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="push_heap">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.heap_algorithms.push_heap"></a><a class="link" href="push_heap.html" title="push_heap">
push_heap</a>
<a name="range.reference.algorithms.heap.push_heap"></a><a class="link" href="push_heap.html" title="push_heap">push_heap</a>
</h5></div></div></div>
<a name="range.reference.algorithms.heap_algorithms.push_heap.prototype"></a><h6>
<a name="id3097132"></a>
<a class="link" href="push_heap.html#range.reference.algorithms.heap_algorithms.push_heap.prototype">Prototype</a>
<a name="range.reference.algorithms.heap.push_heap.prototype"></a><h6>
<a name="id739222"></a>
<a class="link" href="push_heap.html#range.reference.algorithms.heap.push_heap.prototype">Prototype</a>
</h6>
<p>
@ -48,9 +47,9 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.heap_algorithms.push_heap.description"></a><h6>
<a name="id3097513"></a>
<a class="link" href="push_heap.html#range.reference.algorithms.heap_algorithms.push_heap.description">Description</a>
<a name="range.reference.algorithms.heap.push_heap.description"></a><h6>
<a name="id739596"></a>
<a class="link" href="push_heap.html#range.reference.algorithms.heap.push_heap.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">push_heap</span></code> adds an element
@ -62,77 +61,79 @@
by evaluating <code class="computeroutput"><span class="identifier">pred</span></code> in
the predicate versions.
</p>
<a name="range.reference.algorithms.heap_algorithms.push_heap.definition"></a><h6>
<a name="id3097678"></a>
<a class="link" href="push_heap.html#range.reference.algorithms.heap_algorithms.push_heap.definition">Definition</a>
<a name="range.reference.algorithms.heap.push_heap.definition"></a><h6>
<a name="id739755"></a>
<a class="link" href="push_heap.html#range.reference.algorithms.heap.push_heap.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">heap_algorithm</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.heap_algorithms.push_heap.requirements"></a><h6>
<a name="id3097751"></a>
<a class="link" href="push_heap.html#range.reference.algorithms.heap_algorithms.push_heap.requirements">Requirements</a>
<a name="range.reference.algorithms.heap.push_heap.requirements"></a><h6>
<a name="id739825"></a>
<a class="link" href="push_heap.html#range.reference.algorithms.heap.push_heap.requirements">Requirements</a>
</h6>
<p>
<span class="bold"><strong>For the non-predicate versions:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
mutable.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a model of the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a model of the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>.
</li>
<li class="listitem">
The ordering of objects of type <code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a <span class="bold"><strong><span class="emphasis"><em>strict weak ordering</em></span></strong></span>,
as defined in the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
requirements.
</li>
The ordering of objects of type <code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a <span class="bold"><strong><span class="emphasis"><em>strict weak ordering</em></span></strong></span>,
as defined in the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
requirements.
</li>
</ul></div>
<p>
<span class="bold"><strong>For the predicate versions:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
mutable.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Compare</span></code> is a model
of the <code class="computeroutput"><span class="identifier">StrictWeakOrderingConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">Compare</span></code> is a model
of the <code class="computeroutput"><span class="identifier">StrictWeakOrderingConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is convertible to both of <code class="computeroutput"><span class="identifier">Compare</span></code>'s
argument types.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is convertible to both of <code class="computeroutput"><span class="identifier">Compare</span></code>'s
argument types.
</li>
</ul></div>
<a name="range.reference.algorithms.heap_algorithms.push_heap.precondition_"></a><h6>
<a name="id3097987"></a>
<a class="link" href="push_heap.html#range.reference.algorithms.heap_algorithms.push_heap.precondition_">Precondition:</a>
<a name="range.reference.algorithms.heap.push_heap.precondition_"></a><h6>
<a name="id740073"></a>
<a class="link" href="push_heap.html#range.reference.algorithms.heap.push_heap.precondition_">Precondition:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem"><code class="computeroutput"><span class="special">!</span><span class="identifier">empty</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code></li>
<li class="listitem">
<code class="computeroutput"><span class="special">[</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">prior</span><span class="special">(</span><span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)))</span></code> is a heap.
</li>
<code class="computeroutput"><span class="special">!</span><span class="identifier">empty</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code>
</li>
<li class="listitem">
<code class="computeroutput"><span class="special">[</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">prior</span><span class="special">(</span><span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)))</span></code> is a heap.
</li>
</ul></div>
<a name="range.reference.algorithms.heap_algorithms.push_heap.complexity"></a><h6>
<a name="id3098104"></a>
<a class="link" href="push_heap.html#range.reference.algorithms.heap_algorithms.push_heap.complexity">Complexity</a>
<a name="range.reference.algorithms.heap.push_heap.complexity"></a><h6>
<a name="id740193"></a>
<a class="link" href="push_heap.html#range.reference.algorithms.heap.push_heap.complexity">Complexity</a>
</h6>
<p>
Logarithmic. At most <code class="computeroutput"><span class="identifier">log</span><span class="special">(</span><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code> comparisons.
@ -148,7 +149,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../heap_algorithms.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="pop_heap.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="../heap.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="pop_heap.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -2,34 +2,33 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>sort_heap</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../heap_algorithms.html" title="Heap algorithms">
<link rel="up" href="../heap.html" title="Heap algorithms">
<link rel="prev" href="make_heap.html" title="make_heap">
<link rel="next" href="../permutation_algorithms.html" title="Permutation algorithms">
<link rel="next" href="../permutation.html" title="Permutation algorithms">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="make_heap.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../permutation_algorithms.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="make_heap.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../permutation.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="sort_heap">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.heap_algorithms.sort_heap"></a><a class="link" href="sort_heap.html" title="sort_heap">
sort_heap</a>
<a name="range.reference.algorithms.heap.sort_heap"></a><a class="link" href="sort_heap.html" title="sort_heap">sort_heap</a>
</h5></div></div></div>
<a name="range.reference.algorithms.heap_algorithms.sort_heap.prototype"></a><h6>
<a name="id3100042"></a>
<a class="link" href="sort_heap.html#range.reference.algorithms.heap_algorithms.sort_heap.prototype">Prototype</a>
<a name="range.reference.algorithms.heap.sort_heap.prototype"></a><h6>
<a name="id742115"></a>
<a class="link" href="sort_heap.html#range.reference.algorithms.heap.sort_heap.prototype">Prototype</a>
</h6>
<p>
@ -48,9 +47,9 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.heap_algorithms.sort_heap.description"></a><h6>
<a name="id3100424"></a>
<a class="link" href="sort_heap.html#range.reference.algorithms.heap_algorithms.sort_heap.description">Description</a>
<a name="range.reference.algorithms.heap.sort_heap.description"></a><h6>
<a name="id742491"></a>
<a class="link" href="sort_heap.html#range.reference.algorithms.heap.sort_heap.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">sort_heap</span></code> turns a heap
@ -61,74 +60,74 @@
by evaluating <code class="computeroutput"><span class="identifier">pred</span></code> in
the predicate versions.
</p>
<a name="range.reference.algorithms.heap_algorithms.sort_heap.definition"></a><h6>
<a name="id3100494"></a>
<a class="link" href="sort_heap.html#range.reference.algorithms.heap_algorithms.sort_heap.definition">Definition</a>
<a name="range.reference.algorithms.heap.sort_heap.definition"></a><h6>
<a name="id742555"></a>
<a class="link" href="sort_heap.html#range.reference.algorithms.heap.sort_heap.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">heap_algorithm</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.heap_algorithms.sort_heap.requirements"></a><h6>
<a name="id3100567"></a>
<a class="link" href="sort_heap.html#range.reference.algorithms.heap_algorithms.sort_heap.requirements">Requirements</a>
<a name="range.reference.algorithms.heap.sort_heap.requirements"></a><h6>
<a name="id742626"></a>
<a class="link" href="sort_heap.html#range.reference.algorithms.heap.sort_heap.requirements">Requirements</a>
</h6>
<p>
<span class="bold"><strong>For the non-predicate versions:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
mutable.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a model of the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a model of the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>.
</li>
<li class="listitem">
The ordering of objects of type <code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a <span class="bold"><strong><span class="emphasis"><em>strict weak ordering</em></span></strong></span>,
as defined in the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
requirements.
</li>
The ordering of objects of type <code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a <span class="bold"><strong><span class="emphasis"><em>strict weak ordering</em></span></strong></span>,
as defined in the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
requirements.
</li>
</ul></div>
<p>
<span class="bold"><strong>For the predicate versions:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
mutable.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Compare</span></code> is a model
of the <code class="computeroutput"><span class="identifier">StrictWeakOrderingConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">Compare</span></code> is a model
of the <code class="computeroutput"><span class="identifier">StrictWeakOrderingConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is convertible to both of <code class="computeroutput"><span class="identifier">Compare</span></code>'s
argument types.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is convertible to both of <code class="computeroutput"><span class="identifier">Compare</span></code>'s
argument types.
</li>
</ul></div>
<a name="range.reference.algorithms.heap_algorithms.sort_heap.precondition_"></a><h6>
<a name="id3100803"></a>
<a class="link" href="sort_heap.html#range.reference.algorithms.heap_algorithms.sort_heap.precondition_">Precondition:</a>
<a name="range.reference.algorithms.heap.sort_heap.precondition_"></a><h6>
<a name="id742873"></a>
<a class="link" href="sort_heap.html#range.reference.algorithms.heap.sort_heap.precondition_">Precondition:</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">rng</span></code> is a heap.
</p>
<a name="range.reference.algorithms.heap_algorithms.sort_heap.complexity"></a><h6>
<a name="id3100840"></a>
<a class="link" href="sort_heap.html#range.reference.algorithms.heap_algorithms.sort_heap.complexity">Complexity</a>
<a name="range.reference.algorithms.heap.sort_heap.complexity"></a><h6>
<a name="id742906"></a>
<a class="link" href="sort_heap.html#range.reference.algorithms.heap.sort_heap.complexity">Complexity</a>
</h6>
<p>
At most <code class="computeroutput"><span class="identifier">N</span> <span class="special">*</span>
@ -147,7 +146,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="make_heap.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../permutation_algorithms.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="make_heap.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../heap.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../permutation.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,53 +0,0 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Heap algorithms</title>
<link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../algorithms.html" title="Range Algorithm">
<link rel="prev" href="set_algorithms/set_symmetric_difference.html" title="set_symmetric_difference">
<link rel="next" href="heap_algorithms/push_heap.html" title="push_heap">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="set_algorithms/set_symmetric_difference.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithms.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="heap_algorithms/push_heap.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Heap algorithms">
<div class="titlepage"><div><div><h4 class="title">
<a name="range.reference.algorithms.heap_algorithms"></a><a class="link" href="heap_algorithms.html" title="Heap algorithms"> Heap algorithms</a>
</h4></div></div></div>
<div class="toc"><dl>
<dt><span class="section"><a href="heap_algorithms/push_heap.html">
push_heap</a></span></dt>
<dt><span class="section"><a href="heap_algorithms/pop_heap.html">
pop_heap</a></span></dt>
<dt><span class="section"><a href="heap_algorithms/make_heap.html">
make_heap</a></span></dt>
<dt><span class="section"><a href="heap_algorithms/sort_heap.html">
sort_heap</a></span></dt>
</dl></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="set_algorithms/set_symmetric_difference.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithms.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="heap_algorithms/push_heap.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,257 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Introduction and motivation</title>
<link rel="stylesheet" href="../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../algorithms.html" title="Range Algorithms">
<link rel="prev" href="../algorithms.html" title="Range Algorithms">
<link rel="next" href="mutating.html" title="Mutating algorithms">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../algorithms.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithms.html"><img src="../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="mutating.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="range.reference.algorithms.introduction"></a><a class="link" href="introduction.html" title="Introduction and motivation">Introduction
and motivation</a>
</h4></div></div></div>
<p>
In its most simple form a <span class="bold"><strong>Range Algorithm</strong></span>
(or range-based algorithm) is simply an iterator-based algorithm where
the <span class="emphasis"><em>two</em></span> iterator arguments have been replaced by
<span class="emphasis"><em>one</em></span> range argument. For example, we may write
</p>
<p>
</p>
<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">vector</span><span class="special">&gt;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span> <span class="special">=</span> <span class="special">...;</span>
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">sort</span><span class="special">(</span><span class="identifier">vec</span><span class="special">);</span>
</pre>
<p>
</p>
<p>
instead of
</p>
<p>
</p>
<pre class="programlisting"><span class="identifier">std</span><span class="special">::</span><span class="identifier">sort</span><span class="special">(</span><span class="identifier">vec</span><span class="special">.</span><span class="identifier">begin</span><span class="special">(),</span> <span class="identifier">vec</span><span class="special">.</span><span class="identifier">end</span><span class="special">());</span>
</pre>
<p>
</p>
<p>
However, the return type of range algorithms is almost always different
from that of existing iterator-based algorithms.
</p>
<p>
One group of algorithms, like <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">sort</span><span class="special">()</span></code>, will simply return the same range so
that we can continue to pass the range around and/or further modify it.
Because of this we may write
</p>
<pre class="programlisting"><span class="identifier">boost</span><span class="special">:</span><span class="identifier">unique</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">sort</span><span class="special">(</span><span class="identifier">vec</span><span class="special">));</span>
</pre>
<p>
to first sort the range and then run <code class="computeroutput"><span class="identifier">unique</span><span class="special">()</span></code> on the sorted range.
</p>
<p>
Algorithms like <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">()</span></code>
fall into another group of algorithms that return (potentially) narrowed
views of the original range. By default <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code> returns the range <code class="computeroutput"><span class="special">[</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">found</span><span class="special">)</span></code>
where <code class="computeroutput"><span class="identifier">found</span></code> denotes the
iterator returned by <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">unique</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code>
</p>
<p>
Therefore exactly the unique values can be copied by writing
</p>
<pre class="programlisting"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">copy</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">sort</span><span class="special">(</span><span class="identifier">vec</span><span class="special">)),</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream_iterator</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span><span class="special">));</span>
</pre>
<p>
</p>
<p>
Algorithms like <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span></code> usually return the same range:
<code class="computeroutput"><span class="special">[</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">found</span><span class="special">)</span></code>. However, this behaviour may be changed
by supplying the algorithms with a template argument:
</p>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Expression
</p>
</th>
<th>
<p>
Return
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_found</span><span class="special">&gt;(</span><span class="identifier">rng</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
returns a single iterator like <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">unique</span></code>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_begin_found</span><span class="special">&gt;(</span><span class="identifier">rng</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
returns the range <code class="computeroutput"><span class="special">[</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span>
<span class="identifier">found</span><span class="special">)</span></code>
(this is the default)
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_begin_next</span><span class="special">&gt;(</span><span class="identifier">rng</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
returns the range <code class="computeroutput"><span class="special">[</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span>
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">next</span><span class="special">(</span><span class="identifier">found</span><span class="special">))</span></code>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_found_end</span><span class="special">&gt;(</span><span class="identifier">rng</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
returns the range <code class="computeroutput"><span class="special">[</span><span class="identifier">found</span><span class="special">,</span>
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_next_end</span><span class="special">&gt;(</span><span class="identifier">rng</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
returns the range <code class="computeroutput"><span class="special">[</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">next</span><span class="special">(</span><span class="identifier">found</span><span class="special">),</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_begin_end</span><span class="special">&gt;(</span><span class="identifier">rng</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
returns the entire original range.
</p>
</td>
</tr>
</tbody>
</table></div>
<p>
This functionality has the following advantages:
</p>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
it allows for <span class="emphasis"><em><span class="bold"><strong>seamless functional-style
programming</strong></span></em></span> where you do not need to use named
local variables to store intermediate results
</li>
<li class="listitem">
it is very <span class="emphasis"><em><span class="bold"><strong>safe</strong></span></em></span>
because the algorithm can verify out-of-bounds conditions and handle
tricky conditions that lead to empty ranges
</li>
</ol></div>
<p>
For example, consider how easy we may erase the duplicates in a sorted
container:
</p>
<p>
</p>
<pre class="programlisting"><span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span> <span class="special">=</span> <span class="special">...;</span>
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">erase</span><span class="special">(</span><span class="identifier">vec</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_found_end</span><span class="special">&gt;(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">sort</span><span class="special">(</span><span class="identifier">vec</span><span class="special">)));</span>
</pre>
<p>
</p>
<p>
Notice the use of <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_found_end</span></code>.
What if we wanted to erase all the duplicates except one of them? In old-fashined
STL-programming we might write
</p>
<p>
</p>
<pre class="programlisting"><span class="comment">// assume 'vec' is already sorted
</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;::</span><span class="identifier">iterator</span> <span class="identifier">i</span> <span class="special">=</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">unique</span><span class="special">(</span><span class="identifier">vec</span><span class="special">.</span><span class="identifier">begin</span><span class="special">(),</span> <span class="identifier">vec</span><span class="special">.</span><span class="identifier">end</span><span class="special">());</span>
<span class="comment">// remember this check or you get into problems
</span><span class="keyword">if</span> <span class="special">(</span><span class="identifier">i</span> <span class="special">!=</span> <span class="identifier">vec</span><span class="special">.</span><span class="identifier">end</span><span class="special">())</span>
<span class="special">++</span><span class="identifier">i</span><span class="special">;</span>
<span class="identifier">vec</span><span class="special">.</span><span class="identifier">erase</span><span class="special">(</span><span class="identifier">i</span><span class="special">,</span> <span class="identifier">vec</span><span class="special">.</span><span class="identifier">end</span><span class="special">());</span>
</pre>
<p>
</p>
<p>
The same task may be accomplished simply with
</p>
<pre class="programlisting"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">erase</span><span class="special">(</span><span class="identifier">vec</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">unique</span><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">return_next_end</span><span class="special">&gt;(</span><span class="identifier">vec</span><span class="special">));</span>
</pre>
<p>
and there is no need to worry about generating an invalid range. Furthermore,
if the container is complex, calling <code class="computeroutput"><span class="identifier">vec</span><span class="special">.</span><span class="identifier">end</span><span class="special">()</span></code> several times will be more expensive
than using a range algorithm.
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../algorithms.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithms.html"><img src="../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="mutating.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,75 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Mutating algorithms</title>
<link rel="stylesheet" href="../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../algorithms.html" title="Range Algorithms">
<link rel="prev" href="introduction.html" title="Introduction and motivation">
<link rel="next" href="mutating/copy.html" title="copy">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="introduction.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithms.html"><img src="../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="mutating/copy.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="range.reference.algorithms.mutating"></a><a class="link" href="mutating.html" title="Mutating algorithms">Mutating algorithms</a>
</h4></div></div></div>
<div class="toc"><dl>
<dt><span class="section"><a href="mutating/copy.html">copy</a></span></dt>
<dt><span class="section"><a href="mutating/copy_backward.html">copy_backward</a></span></dt>
<dt><span class="section"><a href="mutating/fill.html">fill</a></span></dt>
<dt><span class="section"><a href="mutating/fill_n.html">fill_n</a></span></dt>
<dt><span class="section"><a href="mutating/generate.html">generate</a></span></dt>
<dt><span class="section"><a href="mutating/inplace_merge.html">inplace_merge</a></span></dt>
<dt><span class="section"><a href="mutating/merge.html">merge</a></span></dt>
<dt><span class="section"><a href="mutating/nth_element.html">nth_element</a></span></dt>
<dt><span class="section"><a href="mutating/partial_sort.html">partial_sort</a></span></dt>
<dt><span class="section"><a href="mutating/partition.html">partition</a></span></dt>
<dt><span class="section"><a href="mutating/random_shuffle.html">random_shuffle</a></span></dt>
<dt><span class="section"><a href="mutating/remove.html">remove</a></span></dt>
<dt><span class="section"><a href="mutating/remove_copy.html">remove_copy</a></span></dt>
<dt><span class="section"><a href="mutating/remove_copy_if.html">remove_copy_if</a></span></dt>
<dt><span class="section"><a href="mutating/remove_if.html">remove_if</a></span></dt>
<dt><span class="section"><a href="mutating/replace.html">replace</a></span></dt>
<dt><span class="section"><a href="mutating/replace_copy.html">replace_copy</a></span></dt>
<dt><span class="section"><a href="mutating/replace_copy_if.html">replace_copy_if</a></span></dt>
<dt><span class="section"><a href="mutating/replace_if.html">replace_if</a></span></dt>
<dt><span class="section"><a href="mutating/reverse.html">reverse</a></span></dt>
<dt><span class="section"><a href="mutating/reverse_copy.html">reverse_copy</a></span></dt>
<dt><span class="section"><a href="mutating/rotate.html">rotate</a></span></dt>
<dt><span class="section"><a href="mutating/rotate_copy.html">rotate_copy</a></span></dt>
<dt><span class="section"><a href="mutating/sort.html">sort</a></span></dt>
<dt><span class="section"><a href="mutating/stable_partition.html">stable_partition</a></span></dt>
<dt><span class="section"><a href="mutating/stable_sort.html">stable_sort</a></span></dt>
<dt><span class="section"><a href="mutating/swap_ranges.html">swap_ranges</a></span></dt>
<dt><span class="section"><a href="mutating/transform.html">transform</a></span></dt>
<dt><span class="section"><a href="mutating/unique.html">unique</a></span></dt>
<dt><span class="section"><a href="mutating/unique_copy.html">unique_copy</a></span></dt>
</dl></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="introduction.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithms.html"><img src="../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="mutating/copy.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,115 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>copy</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="../mutating.html" title="Mutating algorithms">
<link rel="next" href="copy_backward.html" title="copy_backward">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../mutating.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="copy_backward.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.mutating.copy"></a><a class="link" href="copy.html" title="copy">copy</a>
</h5></div></div></div>
<a name="range.reference.algorithms.mutating.copy.prototype"></a><h6>
<a name="id684203"></a>
<a class="link" href="copy.html#range.reference.algorithms.mutating.copy.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">SinglePassRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">&gt;</span>
<span class="identifier">OutputIterator</span> <span class="identifier">copy</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">&amp;</span> <span class="identifier">source_rng</span><span class="special">,</span> <span class="identifier">OutputIterator</span> <span class="identifier">out_it</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.mutating.copy.description"></a><h6>
<a name="id684330"></a>
<a class="link" href="copy.html#range.reference.algorithms.mutating.copy.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">copy</span></code> copies all elements
from <code class="computeroutput"><span class="identifier">source_rng</span></code> to the
range <code class="computeroutput"><span class="special">[</span><span class="identifier">out_it</span><span class="special">,</span> <span class="identifier">out_it</span>
<span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">source_rng</span><span class="special">))</span></code>. The return value is <code class="computeroutput"><span class="identifier">out_it</span> <span class="special">+</span>
<span class="identifier">distance</span><span class="special">(</span><span class="identifier">source_rng</span><span class="special">)</span></code>
</p>
<a name="range.reference.algorithms.mutating.copy.definition"></a><h6>
<a name="id684459"></a>
<a class="link" href="copy.html#range.reference.algorithms.mutating.copy.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">copy</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.mutating.copy.requirements"></a><h6>
<a name="id684528"></a>
<a class="link" href="copy.html#range.reference.algorithms.mutating.copy.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange</span></code> is
a model of the <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">OutputIterator</span></code> is
a model of the <code class="computeroutput"><span class="identifier">OutputIteratorConcept</span></code>.
</li>
<li class="listitem">
The <code class="computeroutput"><span class="identifier">value_type</span></code> of
<a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single Pass Range</a>
Concept is convertible to a type in <code class="computeroutput"><span class="identifier">OutputIterator</span></code>'s
set of value types.
</li>
</ul></div>
<a name="range.reference.algorithms.mutating.copy.precondition_"></a><h6>
<a name="id684638"></a>
<a class="link" href="copy.html#range.reference.algorithms.mutating.copy.precondition_">Precondition:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">out_it</span></code> is not an
iterator within the <code class="computeroutput"><span class="identifier">source_rng</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="special">[</span><span class="identifier">out_it</span><span class="special">,</span> <span class="identifier">out_it</span>
<span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">source_rng</span><span class="special">))</span></code> is a valid range.
</li>
</ul></div>
<a name="range.reference.algorithms.mutating.copy.complexity"></a><h6>
<a name="id684744"></a>
<a class="link" href="copy.html#range.reference.algorithms.mutating.copy.complexity">Complexity</a>
</h6>
<p>
Linear. Exactly <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">source_rng</span><span class="special">)</span></code> assignments are performed.
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../mutating.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="copy_backward.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,35 +1,34 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - copy_backward</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<title>copy_backward</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="copy.html" title="Range Algorithm - copy">
<link rel="next" href="fill.html" title="Range Algorithm - fill">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="copy.html" title="copy">
<link rel="next" href="fill.html" title="fill">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="copy.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="fill.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="copy.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="fill.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - copy_backward">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward"></a><a class="link" href="copy_backward.html" title="Range Algorithm - copy_backward">
Range Algorithm - copy_backward</a>
<a name="range.reference.algorithms.mutating.copy_backward"></a><a class="link" href="copy_backward.html" title="copy_backward">copy_backward</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.prototype"></a><h6>
<a name="id3048766"></a>
<a class="link" href="copy_backward.html#range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.prototype">Prototype</a>
<a name="range.reference.algorithms.mutating.copy_backward.prototype"></a><h6>
<a name="id684808"></a>
<a class="link" href="copy_backward.html#range.reference.algorithms.mutating.copy_backward.prototype">Prototype</a>
</h6>
<p>
@ -41,9 +40,9 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.description"></a><h6>
<a name="id3048900"></a>
<a class="link" href="copy_backward.html#range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.description">Description</a>
<a name="range.reference.algorithms.mutating.copy_backward.description"></a><h6>
<a name="id684936"></a>
<a class="link" href="copy_backward.html#range.reference.algorithms.mutating.copy_backward.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">copy_backward</span></code> copies
@ -59,51 +58,51 @@
Note well that unlike all other standard algorithms <code class="computeroutput"><span class="identifier">out_it</span></code>
denotes the <span class="bold"><strong>end</strong></span> of the output sequence.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.definition"></a><h6>
<a name="id3049060"></a>
<a class="link" href="copy_backward.html#range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.definition">Definition</a>
<a name="range.reference.algorithms.mutating.copy_backward.definition"></a><h6>
<a name="id685090"></a>
<a class="link" href="copy_backward.html#range.reference.algorithms.mutating.copy_backward.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">copy_backward</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.requirements"></a><h6>
<a name="id3049134"></a>
<a class="link" href="copy_backward.html#range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.requirements">Requirements</a>
<a name="range.reference.algorithms.mutating.copy_backward.requirements"></a><h6>
<a name="id685160"></a>
<a class="link" href="copy_backward.html#range.reference.algorithms.mutating.copy_backward.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">BidirectionalRange</span></code>
is a model of <a class="link" href="../../../concepts/bidirectional_range.html" title="Bidirectional Range">Bidirectional
Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">BidirectionalRange</span></code>
is a model of <a class="link" href="../../../concepts/bidirectional_range.html" title="Bidirectional Range">Bidirectional
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">OutputIterator</span></code> is a
model of the <code class="computeroutput"><span class="identifier">OutputIteratorConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">OutputIterator</span></code> is
a model of the <code class="computeroutput"><span class="identifier">OutputIteratorConcept</span></code>.
</li>
<li class="listitem">
The <code class="computeroutput"><span class="identifier">value_type</span></code> of
<a class="link" href="../../../concepts/bidirectional_range.html" title="Bidirectional Range">Bidirectional Range</a>
Concept is convertible to a type in <code class="computeroutput"><span class="identifier">OutputIterator</span></code>'s
set of value types.
</li>
The <code class="computeroutput"><span class="identifier">value_type</span></code> of
<a class="link" href="../../../concepts/bidirectional_range.html" title="Bidirectional Range">Bidirectional
Range</a> Concept is convertible to a type in <code class="computeroutput"><span class="identifier">OutputIterator</span></code>'s
set of value types.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.precondition_"></a><h6>
<a name="id3049245"></a>
<a class="link" href="copy_backward.html#range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.precondition_">Precondition:</a>
<a name="range.reference.algorithms.mutating.copy_backward.precondition_"></a><h6>
<a name="id685270"></a>
<a class="link" href="copy_backward.html#range.reference.algorithms.mutating.copy_backward.precondition_">Precondition:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">out_it</span></code> is not an iterator
within the <code class="computeroutput"><span class="identifier">source_rng</span></code>.
</li>
<code class="computeroutput"><span class="identifier">out_it</span></code> is not an
iterator within the <code class="computeroutput"><span class="identifier">source_rng</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="special">[</span><span class="identifier">out_it</span><span class="special">,</span> <span class="identifier">out_it</span>
<span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">source_rng</span><span class="special">))</span></code> is a valid range.
</li>
<code class="computeroutput"><span class="special">[</span><span class="identifier">out_it</span><span class="special">,</span> <span class="identifier">out_it</span>
<span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">source_rng</span><span class="special">))</span></code> is a valid range.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.complexity"></a><h6>
<a name="id3049352"></a>
<a class="link" href="copy_backward.html#range.reference.algorithms.range_algorithm_mutating_algorithms.copy_backward.complexity">Complexity</a>
<a name="range.reference.algorithms.mutating.copy_backward.complexity"></a><h6>
<a name="id685378"></a>
<a class="link" href="copy_backward.html#range.reference.algorithms.mutating.copy_backward.complexity">Complexity</a>
</h6>
<p>
Linear. Exactly <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">source_rng</span><span class="special">)</span></code> assignments are performed.
@ -119,7 +118,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="copy.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="fill.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="copy.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="fill.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,35 +1,34 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - fill</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<title>fill</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="copy_backward.html" title="Range Algorithm - copy_backward">
<link rel="next" href="fill_n.html" title="Range Algorithm - fill_n">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="copy_backward.html" title="copy_backward">
<link rel="next" href="fill_n.html" title="fill_n">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="copy_backward.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="fill_n.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="copy_backward.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="fill_n.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - fill">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill"></a><a class="link" href="fill.html" title="Range Algorithm - fill">
Range Algorithm - fill</a>
<a name="range.reference.algorithms.mutating.fill"></a><a class="link" href="fill.html" title="fill">fill</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill.prototype"></a><h6>
<a name="id3049424"></a>
<a class="link" href="fill.html#range.reference.algorithms.range_algorithm_mutating_algorithms.fill.prototype">Prototype</a>
<a name="range.reference.algorithms.mutating.fill.prototype"></a><h6>
<a name="id685443"></a>
<a class="link" href="fill.html#range.reference.algorithms.mutating.fill.prototype">Prototype</a>
</h6>
<p>
@ -39,48 +38,48 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill.description"></a><h6>
<a name="id3049568"></a>
<a class="link" href="fill.html#range.reference.algorithms.range_algorithm_mutating_algorithms.fill.description">Description</a>
<a name="range.reference.algorithms.mutating.fill.description"></a><h6>
<a name="id685579"></a>
<a class="link" href="fill.html#range.reference.algorithms.mutating.fill.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">fill</span></code> assigns the value
<code class="computeroutput"><span class="identifier">val</span></code> to every element
in the range <code class="computeroutput"><span class="identifier">rng</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill.definition"></a><h6>
<a name="id3049627"></a>
<a class="link" href="fill.html#range.reference.algorithms.range_algorithm_mutating_algorithms.fill.definition">Definition</a>
<a name="range.reference.algorithms.mutating.fill.definition"></a><h6>
<a name="id685634"></a>
<a class="link" href="fill.html#range.reference.algorithms.mutating.fill.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">fill</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill.requirements"></a><h6>
<a name="id3049701"></a>
<a class="link" href="fill.html#range.reference.algorithms.range_algorithm_mutating_algorithms.fill.requirements">Requirements</a>
<a name="range.reference.algorithms.mutating.fill.requirements"></a><h6>
<a name="id685703"></a>
<a class="link" href="fill.html#range.reference.algorithms.mutating.fill.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a model
of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward Range</a>
Concept.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a
model of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Value</span></code> is a model of
the <code class="computeroutput"><span class="identifier">AssignableConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">Value</span></code> is a model
of the <code class="computeroutput"><span class="identifier">AssignableConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Value</span></code> is convertible
to <code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s value
type.
</li>
<code class="computeroutput"><span class="identifier">Value</span></code> is convertible
to <code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s
value type.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill.complexity"></a><h6>
<a name="id3049816"></a>
<a class="link" href="fill.html#range.reference.algorithms.range_algorithm_mutating_algorithms.fill.complexity">Complexity</a>
<a name="range.reference.algorithms.mutating.fill.complexity"></a><h6>
<a name="id685823"></a>
<a class="link" href="fill.html#range.reference.algorithms.mutating.fill.complexity">Complexity</a>
</h6>
<p>
Linear. Exactly <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code> assignments are performed.
@ -96,7 +95,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="copy_backward.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="fill_n.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="copy_backward.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="fill_n.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,35 +1,34 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - fill_n</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<title>fill_n</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="fill.html" title="Range Algorithm - fill">
<link rel="next" href="generate.html" title="Range Algorithm - generate">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="fill.html" title="fill">
<link rel="next" href="generate.html" title="generate">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="fill.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="generate.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="fill.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="generate.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - fill_n">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n"></a><a class="link" href="fill_n.html" title="Range Algorithm - fill_n">
Range Algorithm - fill_n</a>
<a name="range.reference.algorithms.mutating.fill_n"></a><a class="link" href="fill_n.html" title="fill_n">fill_n</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n.prototype"></a><h6>
<a name="id3049888"></a>
<a class="link" href="fill_n.html#range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n.prototype">Prototype</a>
<a name="range.reference.algorithms.mutating.fill_n.prototype"></a><h6>
<a name="id685887"></a>
<a class="link" href="fill_n.html#range.reference.algorithms.mutating.fill_n.prototype">Prototype</a>
</h6>
<p>
@ -39,47 +38,47 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n.description"></a><h6>
<a name="id3050063"></a>
<a class="link" href="fill_n.html#range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n.description">Description</a>
<a name="range.reference.algorithms.mutating.fill_n.description"></a><h6>
<a name="id686056"></a>
<a class="link" href="fill_n.html#range.reference.algorithms.mutating.fill_n.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">fill_n</span></code> assigns the value
<code class="computeroutput"><span class="identifier">val</span></code> to <code class="computeroutput"><span class="identifier">n</span></code> elements in the range <code class="computeroutput"><span class="identifier">rng</span></code> begining with <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n.definition"></a><h6>
<a name="id3050167"></a>
<a class="link" href="fill_n.html#range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n.definition">Definition</a>
<a name="range.reference.algorithms.mutating.fill_n.definition"></a><h6>
<a name="id686152"></a>
<a class="link" href="fill_n.html#range.reference.algorithms.mutating.fill_n.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">fill_n</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n.requirements"></a><h6>
<a name="id3050241"></a>
<a class="link" href="fill_n.html#range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n.requirements">Requirements</a>
<a name="range.reference.algorithms.mutating.fill_n.requirements"></a><h6>
<a name="id686222"></a>
<a class="link" href="fill_n.html#range.reference.algorithms.mutating.fill_n.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a model
of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward Range</a>
Concept.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a
model of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Value</span></code> is a model of
the <code class="computeroutput"><span class="identifier">AssignableConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">Value</span></code> is a model
of the <code class="computeroutput"><span class="identifier">AssignableConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Value</span></code> is convertible
to <code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s value
type.
</li>
<code class="computeroutput"><span class="identifier">Value</span></code> is convertible
to <code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s
value type.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n.complexity"></a><h6>
<a name="id3050355"></a>
<a class="link" href="fill_n.html#range.reference.algorithms.range_algorithm_mutating_algorithms.fill_n.complexity">Complexity</a>
<a name="range.reference.algorithms.mutating.fill_n.complexity"></a><h6>
<a name="id686341"></a>
<a class="link" href="fill_n.html#range.reference.algorithms.mutating.fill_n.complexity">Complexity</a>
</h6>
<p>
Linear. Exactly <code class="computeroutput"><span class="identifier">n</span></code> assignments
@ -96,7 +95,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="fill.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="generate.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="fill.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="generate.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,35 +1,34 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - generate</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<title>generate</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="fill_n.html" title="Range Algorithm - fill_n">
<link rel="next" href="inplace_merge.html" title="Range Algorithm - inplace_merge">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="fill_n.html" title="fill_n">
<link rel="next" href="inplace_merge.html" title="inplace_merge">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="fill_n.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="inplace_merge.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="fill_n.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="inplace_merge.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - generate">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.generate"></a><a class="link" href="generate.html" title="Range Algorithm - generate">
Range Algorithm - generate</a>
<a name="range.reference.algorithms.mutating.generate"></a><a class="link" href="generate.html" title="generate">generate</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.generate.prototype"></a><h6>
<a name="id3050413"></a>
<a class="link" href="generate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.generate.prototype">Prototype</a>
<a name="range.reference.algorithms.mutating.generate.prototype"></a><h6>
<a name="id686391"></a>
<a class="link" href="generate.html#range.reference.algorithms.mutating.generate.prototype">Prototype</a>
</h6>
<p>
@ -42,9 +41,9 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.generate.description"></a><h6>
<a name="id3050656"></a>
<a class="link" href="generate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.generate.description">Description</a>
<a name="range.reference.algorithms.mutating.generate.description"></a><h6>
<a name="id686629"></a>
<a class="link" href="generate.html#range.reference.algorithms.mutating.generate.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">generate</span></code> assigns the
@ -52,54 +51,54 @@
to each element in range <code class="computeroutput"><span class="identifier">rng</span></code>.
Returns the resultant range.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.generate.definition"></a><h6>
<a name="id3050720"></a>
<a class="link" href="generate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.generate.definition">Definition</a>
<a name="range.reference.algorithms.mutating.generate.definition"></a><h6>
<a name="id686689"></a>
<a class="link" href="generate.html#range.reference.algorithms.mutating.generate.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">generate</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.generate.requirements"></a><h6>
<a name="id3050795"></a>
<a class="link" href="generate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.generate.requirements">Requirements</a>
<a name="range.reference.algorithms.mutating.generate.requirements"></a><h6>
<a name="id686758"></a>
<a class="link" href="generate.html#range.reference.algorithms.mutating.generate.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a model
of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward Range</a>
Concept.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a
model of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Generator</span></code> is a model
of the <code class="computeroutput"><span class="identifier">GeneratorConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">Generator</span></code> is a model
of the <code class="computeroutput"><span class="identifier">GeneratorConcept</span></code>.
</li>
<li class="listitem">
The <code class="computeroutput"><span class="identifier">value_type</span></code> of
<code class="computeroutput"><span class="identifier">SinglePassRange</span></code> is
convertible to a type in <code class="computeroutput"><span class="identifier">OutputIterator</span></code>'s
set of value types.
</li>
The <code class="computeroutput"><span class="identifier">value_type</span></code> of
<code class="computeroutput"><span class="identifier">SinglePassRange</span></code> is
convertible to a type in <code class="computeroutput"><span class="identifier">OutputIterator</span></code>'s
set of value types.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.generate.precondition_"></a><h6>
<a name="id3050922"></a>
<a class="link" href="generate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.generate.precondition_">Precondition:</a>
<a name="range.reference.algorithms.mutating.generate.precondition_"></a><h6>
<a name="id686889"></a>
<a class="link" href="generate.html#range.reference.algorithms.mutating.generate.precondition_">Precondition:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">out_it</span></code> is not an iterator
within <code class="computeroutput"><span class="identifier">rng</span></code>.
</li>
<code class="computeroutput"><span class="identifier">out_it</span></code> is not an
iterator within <code class="computeroutput"><span class="identifier">rng</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="special">[</span><span class="identifier">out_it</span><span class="special">,</span> <span class="identifier">out_it</span>
<span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code> is a valid range.
</li>
<code class="computeroutput"><span class="special">[</span><span class="identifier">out_it</span><span class="special">,</span> <span class="identifier">out_it</span>
<span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code> is a valid range.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.generate.complexity"></a><h6>
<a name="id3051028"></a>
<a class="link" href="generate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.generate.complexity">Complexity</a>
<a name="range.reference.algorithms.mutating.generate.complexity"></a><h6>
<a name="id686995"></a>
<a class="link" href="generate.html#range.reference.algorithms.mutating.generate.complexity">Complexity</a>
</h6>
<p>
Linear. Exactly <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code> assignments are performed.
@ -115,7 +114,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="fill_n.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="inplace_merge.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="fill_n.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="inplace_merge.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,35 +1,34 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - inplace_merge</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<title>inplace_merge</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="generate.html" title="Range Algorithm - generate">
<link rel="next" href="merge.html" title="Range Algorithm - merge">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="generate.html" title="generate">
<link rel="next" href="merge.html" title="merge">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="generate.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="merge.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="generate.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="merge.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - inplace_merge">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge"></a><a class="link" href="inplace_merge.html" title="Range Algorithm - inplace_merge">
Range Algorithm - inplace_merge</a>
<a name="range.reference.algorithms.mutating.inplace_merge"></a><a class="link" href="inplace_merge.html" title="inplace_merge">inplace_merge</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.prototype"></a><h6>
<a name="id3051100"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.prototype">Prototype</a>
<a name="range.reference.algorithms.mutating.inplace_merge.prototype"></a><h6>
<a name="id687058"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.mutating.inplace_merge.prototype">Prototype</a>
</h6>
<p>
@ -38,18 +37,18 @@
<span class="identifier">BidirectionalRange</span><span class="special">&amp;</span>
<span class="identifier">inplace_merge</span><span class="special">(</span> <span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">BidirectionalRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">middle</span> <span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalRange</span><span class="special">&gt;</span>
<span class="keyword">const</span> <span class="identifier">BidirectionalRange</span><span class="special">&amp;</span>
<span class="identifier">inplace_merge</span><span class="special">(</span> <span class="keyword">const</span> <span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">BidirectionalRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">middle</span> <span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">BinaryPredicate</span><span class="special">&gt;</span>
<span class="identifier">BidirectionalRange</span><span class="special">&amp;</span>
<span class="identifier">inplace_merge</span><span class="special">(</span> <span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">BidirectionalRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">middle</span><span class="special">,</span>
<span class="identifier">BinaryPredicate</span> <span class="identifier">pred</span> <span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">BinaryPredicate</span><span class="special">&gt;</span>
<span class="keyword">const</span> <span class="identifier">BidirectionalRange</span><span class="special">&amp;</span>
<span class="identifier">inplace_merge</span><span class="special">(</span> <span class="keyword">const</span> <span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
@ -58,9 +57,9 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.description"></a><h6>
<a name="id3051664"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.description">Description</a>
<a name="range.reference.algorithms.mutating.inplace_merge.description"></a><h6>
<a name="id687615"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.mutating.inplace_merge.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">inplace_merge</span></code> combines
@ -71,39 +70,39 @@
is stable, meaning both that the relative order of elements within each
input range is preserved.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.definition"></a><h6>
<a name="id3051892"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.definition">Definition</a>
<a name="range.reference.algorithms.mutating.inplace_merge.definition"></a><h6>
<a name="id687833"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.mutating.inplace_merge.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">inplace_merge</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.requirements"></a><h6>
<a name="id3051966"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.requirements">Requirements</a>
<a name="range.reference.algorithms.mutating.inplace_merge.requirements"></a><h6>
<a name="id687903"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.mutating.inplace_merge.requirements">Requirements</a>
</h6>
<p>
<span class="bold"><strong>For the non-predicate version:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">BidirectionalRange</span></code>
is a model of the <a class="link" href="../../../concepts/bidirectional_range.html" title="Bidirectional Range">Bidirectional
Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">BidirectionalRange</span></code>
is a model of the <a class="link" href="../../../concepts/bidirectional_range.html" title="Bidirectional Range">Bidirectional
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">BidirectionalRange</span></code>
is mutable.
</li>
<code class="computeroutput"><span class="identifier">BidirectionalRange</span></code>
is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">range_value</span><span class="special">&lt;</span><span class="identifier">BidirectionalRange</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is a model of <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
</li>
<code class="computeroutput"><span class="identifier">range_value</span><span class="special">&lt;</span><span class="identifier">BidirectionalRange</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is a model of <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
</li>
<li class="listitem">
The ordering on objects of <code class="computeroutput"><span class="identifier">range_type</span><span class="special">&lt;</span><span class="identifier">BidirectionalRange</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
is a <span class="bold"><strong><span class="emphasis"><em>strict weak ordering</em></span></strong></span>,
as defined in the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
requirements.
</li>
The ordering on objects of <code class="computeroutput"><span class="identifier">range_type</span><span class="special">&lt;</span><span class="identifier">BidirectionalRange</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
is a <span class="bold"><strong><span class="emphasis"><em>strict weak ordering</em></span></strong></span>,
as defined in the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
requirements.
</li>
</ul></div>
<p>
<span class="bold"><strong>For the predicate version:</strong></span> * <code class="computeroutput"><span class="identifier">BidirectionalRange</span></code> is a model of the
@ -115,57 +114,57 @@
value type is convertible to both <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code>'s
argument types.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.precondition_"></a><h6>
<a name="id3052222"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.precondition_">Precondition:</a>
<a name="range.reference.algorithms.mutating.inplace_merge.precondition_"></a><h6>
<a name="id688158"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.mutating.inplace_merge.precondition_">Precondition:</a>
</h6>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.for_the_non_predicate_version_"></a><h6>
<a name="id3052246"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.for_the_non_predicate_version_">For
<a name="range.reference.algorithms.mutating.inplace_merge.for_the_non_predicate_version_"></a><h6>
<a name="id688178"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.mutating.inplace_merge.for_the_non_predicate_version_">For
the non-predicate version:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">middle</span></code> is in the range
<code class="computeroutput"><span class="identifier">rng</span></code>.
</li>
<code class="computeroutput"><span class="identifier">middle</span></code> is in the
range <code class="computeroutput"><span class="identifier">rng</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="special">[</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">middle</span><span class="special">)</span></code> is in ascending order. That is for
each pair of adjacent elements <code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">]</span></code>,
<code class="computeroutput"><span class="identifier">y</span> <span class="special">&lt;</span>
<span class="identifier">x</span></code> is <code class="computeroutput"><span class="keyword">false</span></code>.
</li>
<code class="computeroutput"><span class="special">[</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">middle</span><span class="special">)</span></code> is in ascending order. That is for
each pair of adjacent elements <code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">]</span></code>,
<code class="computeroutput"><span class="identifier">y</span> <span class="special">&lt;</span>
<span class="identifier">x</span></code> is <code class="computeroutput"><span class="keyword">false</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="special">[</span><span class="identifier">middle</span><span class="special">,</span> <span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code> is in ascending order. That is for
each pair of adjacent elements <code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">]</span></code>,
<code class="computeroutput"><span class="identifier">y</span> <span class="special">&lt;</span>
<span class="identifier">x</span></code> is <code class="computeroutput"><span class="keyword">false</span></code>.
</li>
<code class="computeroutput"><span class="special">[</span><span class="identifier">middle</span><span class="special">,</span> <span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code> is in ascending order. That is
for each pair of adjacent elements <code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">]</span></code>,
<code class="computeroutput"><span class="identifier">y</span> <span class="special">&lt;</span>
<span class="identifier">x</span></code> is <code class="computeroutput"><span class="keyword">false</span></code>.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.for_the_predicate_version_"></a><h6>
<a name="id3052508"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.for_the_predicate_version_">For
<a name="range.reference.algorithms.mutating.inplace_merge.for_the_predicate_version_"></a><h6>
<a name="id688439"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.mutating.inplace_merge.for_the_predicate_version_">For
the predicate version:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">middle</span></code> is in the range
<code class="computeroutput"><span class="identifier">rng</span></code>.
</li>
<code class="computeroutput"><span class="identifier">middle</span></code> is in the
range <code class="computeroutput"><span class="identifier">rng</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="special">[</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">middle</span><span class="special">)</span></code> is in ascending order. That is for
each pair of adjacent elements <code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">]</span></code>,
<code class="computeroutput"><span class="identifier">pred</span><span class="special">(</span><span class="identifier">y</span><span class="special">,</span><span class="identifier">x</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">false</span></code>.
</li>
<code class="computeroutput"><span class="special">[</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">middle</span><span class="special">)</span></code> is in ascending order. That is for
each pair of adjacent elements <code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">]</span></code>,
<code class="computeroutput"><span class="identifier">pred</span><span class="special">(</span><span class="identifier">y</span><span class="special">,</span><span class="identifier">x</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">false</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="special">[</span><span class="identifier">middle</span><span class="special">,</span> <span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code> is in ascending order. That is for
each pair of adjacent elements <code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">]</span></code>,
<code class="computeroutput"><span class="identifier">pred</span><span class="special">(</span><span class="identifier">y</span><span class="special">,</span><span class="identifier">x</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">false</span></code>.
</li>
<code class="computeroutput"><span class="special">[</span><span class="identifier">middle</span><span class="special">,</span> <span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code> is in ascending order. That is
for each pair of adjacent elements <code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">]</span></code>,
<code class="computeroutput"><span class="identifier">pred</span><span class="special">(</span><span class="identifier">y</span><span class="special">,</span><span class="identifier">x</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">false</span></code>.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.complexity"></a><h6>
<a name="id3052791"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.range_algorithm_mutating_algorithms.inplace_merge.complexity">Complexity</a>
<a name="range.reference.algorithms.mutating.inplace_merge.complexity"></a><h6>
<a name="id688724"></a>
<a class="link" href="inplace_merge.html#range.reference.algorithms.mutating.inplace_merge.complexity">Complexity</a>
</h6>
<p>
Worst case: <code class="computeroutput"><span class="identifier">O</span><span class="special">(</span><span class="identifier">N</span> <span class="identifier">log</span><span class="special">(</span><span class="identifier">N</span><span class="special">))</span></code>
@ -181,7 +180,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="generate.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="merge.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="generate.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="merge.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,256 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>merge</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="inplace_merge.html" title="inplace_merge">
<link rel="next" href="nth_element.html" title="nth_element">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="inplace_merge.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="nth_element.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.mutating.merge"></a><a class="link" href="merge.html" title="merge">merge</a>
</h5></div></div></div>
<a name="range.reference.algorithms.mutating.merge.prototype"></a><h6>
<a name="id688803"></a>
<a class="link" href="merge.html#range.reference.algorithms.mutating.merge.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span>
<span class="keyword">class</span> <span class="identifier">SinglePassRange1</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">SinglePassRange2</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">OutputIterator</span>
<span class="special">&gt;</span>
<span class="identifier">OutputIterator</span> <span class="identifier">merge</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">SinglePassRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">SinglePassRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">,</span>
<span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="keyword">class</span> <span class="identifier">SinglePassRange1</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">SinglePassRange2</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">BinaryPredicate</span>
<span class="special">&gt;</span>
<span class="identifier">OutputIterator</span> <span class="identifier">merge</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">SinglePassRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">SinglePassRange2</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">,</span>
<span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">,</span>
<span class="identifier">BinaryPredicate</span> <span class="identifier">pred</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.mutating.merge.description"></a><h6>
<a name="id689149"></a>
<a class="link" href="merge.html#range.reference.algorithms.mutating.merge.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">merge</span></code> combines two sorted
ranges <code class="computeroutput"><span class="identifier">rng1</span></code> and <code class="computeroutput"><span class="identifier">rng2</span></code> into a single sorted range by
copying elements. <code class="computeroutput"><span class="identifier">merge</span></code>
is stable. The return value is <code class="computeroutput"><span class="identifier">out</span>
<span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">)</span> <span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng2</span><span class="special">)</span></code>.
</p>
<p>
The two versions of <code class="computeroutput"><span class="identifier">merge</span></code>
differ by how they compare the elements.
</p>
<p>
The non-predicate version uses the <code class="computeroutput"><span class="keyword">operator</span><span class="special">&lt;()</span></code> for the range value type. The predicate
version uses the predicate instead of <code class="computeroutput"><span class="keyword">operator</span><span class="special">&lt;()</span></code>.
</p>
<a name="range.reference.algorithms.mutating.merge.definition"></a><h6>
<a name="id689324"></a>
<a class="link" href="merge.html#range.reference.algorithms.mutating.merge.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">merge</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.mutating.merge.requirements"></a><h6>
<a name="id689393"></a>
<a class="link" href="merge.html#range.reference.algorithms.mutating.merge.requirements">Requirements</a>
</h6>
<p>
<span class="bold"><strong>For the non-predicate version:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange1</span></code>
is a model of the <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange2</span></code>
is a model of the <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">range_value</span><span class="special">&lt;</span><span class="identifier">SinglePassRange1</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the same as <code class="computeroutput"><span class="identifier">range_value</span><span class="special">&lt;</span><span class="identifier">SinglePassRange2</span><span class="special">&gt;::</span><span class="identifier">type</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">range_value</span><span class="special">&lt;</span><span class="identifier">SinglePassRange1</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is a model of the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>.
</li>
<li class="listitem">
The ordering on objects of <code class="computeroutput"><span class="identifier">range_value</span><span class="special">&lt;</span><span class="identifier">SinglePassRange1</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
is a <span class="bold"><strong><span class="emphasis"><em>strict weak ordering</em></span></strong></span>,
as defined in the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
requirements.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">range_value</span><span class="special">&lt;</span><span class="identifier">SinglePassRange1</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is convertible to a type in
<code class="computeroutput"><span class="identifier">OutputIterator</span></code>'s
set of value types.
</li>
</ul></div>
<p>
<span class="bold"><strong>For the predicate version:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange1</span></code>
is a model of the <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange2</span></code>
is a model of the <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">range_value</span><span class="special">&lt;</span><span class="identifier">SinglePassRange1</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is the same as <code class="computeroutput"><span class="identifier">range_value</span><span class="special">&lt;</span><span class="identifier">SinglePassRange2</span><span class="special">&gt;::</span><span class="identifier">type</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">BinaryPredicate</span></code> is
a model of the <code class="computeroutput"><span class="identifier">StrictWeakOrderingConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange1</span></code>'s
value type is convertible to both <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code>'s
argument types.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">range_value</span><span class="special">&lt;</span><span class="identifier">SinglePassRange1</span><span class="special">&gt;::</span><span class="identifier">type</span></code> is convertible to a type in
<code class="computeroutput"><span class="identifier">OutputIterator</span></code>'s
set of value types.
</li>
</ul></div>
<a name="range.reference.algorithms.mutating.merge.precondition_"></a><h6>
<a name="id689915"></a>
<a class="link" href="merge.html#range.reference.algorithms.mutating.merge.precondition_">Precondition:</a>
</h6>
<a name="range.reference.algorithms.mutating.merge.for_the_non_predicate_version_"></a><h6>
<a name="id689935"></a>
<a class="link" href="merge.html#range.reference.algorithms.mutating.merge.for_the_non_predicate_version_">For
the non-predicate version:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
The elements of <code class="computeroutput"><span class="identifier">rng1</span></code>
are in ascending order. That is, for each adjacent element pair
<code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">]</span></code> of <code class="computeroutput"><span class="identifier">rng1</span></code>,
<code class="computeroutput"><span class="identifier">y</span> <span class="special">&lt;</span>
<span class="identifier">x</span> <span class="special">==</span>
<span class="keyword">false</span></code>.
</li>
<li class="listitem">
The elements of <code class="computeroutput"><span class="identifier">rng2</span></code>
are in ascending order. That is, for each adjacent element pair
<code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">]</span></code> of <code class="computeroutput"><span class="identifier">rng2</span></code>,
<code class="computeroutput"><span class="identifier">y</span> <span class="special">&lt;</span>
<span class="identifier">x</span> <span class="special">==</span>
<span class="keyword">false</span></code>.
</li>
<li class="listitem">
The ranges <code class="computeroutput"><span class="identifier">rng1</span></code> and
<code class="computeroutput"><span class="special">[</span><span class="identifier">out</span><span class="special">,</span> <span class="identifier">out</span>
<span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">)</span> <span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng2</span><span class="special">))</span></code>
do not overlap.
</li>
<li class="listitem">
The ranges <code class="computeroutput"><span class="identifier">rng2</span></code> and
<code class="computeroutput"><span class="special">[</span><span class="identifier">out</span><span class="special">,</span> <span class="identifier">out</span>
<span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">)</span> <span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng2</span><span class="special">))</span></code>
do not overlap.
</li>
<li class="listitem">
<code class="computeroutput"><span class="special">[</span><span class="identifier">out</span><span class="special">,</span> <span class="identifier">out</span>
<span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">)</span> <span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng2</span><span class="special">))</span></code>
is a valid range.
</li>
</ul></div>
<a name="range.reference.algorithms.mutating.merge.for_the_predicate_version_"></a><h6>
<a name="id690400"></a>
<a class="link" href="merge.html#range.reference.algorithms.mutating.merge.for_the_predicate_version_">For
the predicate version:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
The elements of <code class="computeroutput"><span class="identifier">rng1</span></code>
are in ascending order. That is, for each adjacent element pair
<code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">]</span></code>, of <code class="computeroutput"><span class="identifier">rng1</span></code>,
<code class="computeroutput"><span class="identifier">pred</span><span class="special">(</span><span class="identifier">y</span><span class="special">,</span> <span class="identifier">x</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">false</span></code>.
</li>
<li class="listitem">
The elements of <code class="computeroutput"><span class="identifier">rng2</span></code>
are in ascending order. That is, for each adjacent element pair
<code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">]</span></code>, of <code class="computeroutput"><span class="identifier">rng2</span></code>,
<code class="computeroutput"><span class="identifier">pred</span><span class="special">(</span><span class="identifier">y</span><span class="special">,</span> <span class="identifier">x</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">false</span></code>.
</li>
<li class="listitem">
The ranges <code class="computeroutput"><span class="identifier">rng1</span></code> and
<code class="computeroutput"><span class="special">[</span><span class="identifier">out</span><span class="special">,</span> <span class="identifier">out</span>
<span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">)</span> <span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng2</span><span class="special">))</span></code>
do not overlap.
</li>
<li class="listitem">
The ranges <code class="computeroutput"><span class="identifier">rng2</span></code> and
<code class="computeroutput"><span class="special">[</span><span class="identifier">out</span><span class="special">,</span> <span class="identifier">out</span>
<span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">)</span> <span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng2</span><span class="special">))</span></code>
do not overlap.
</li>
<li class="listitem">
<code class="computeroutput"><span class="special">[</span><span class="identifier">out</span><span class="special">,</span> <span class="identifier">out</span>
<span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">)</span> <span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng2</span><span class="special">))</span></code>
is a valid range.
</li>
</ul></div>
<a name="range.reference.algorithms.mutating.merge.complexity"></a><h6>
<a name="id690889"></a>
<a class="link" href="merge.html#range.reference.algorithms.mutating.merge.complexity">Complexity</a>
</h6>
<p>
Linear. There are no comparisons if both <code class="computeroutput"><span class="identifier">rng1</span></code>
and <code class="computeroutput"><span class="identifier">rng2</span></code> are empty, otherwise
at most <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">)</span> <span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng2</span><span class="special">)</span> <span class="special">-</span> <span class="number">1</span></code>
comparisons.
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="inplace_merge.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="nth_element.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,35 +1,34 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - nth_element</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<title>nth_element</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="merge.html" title="Range Algorithm - merge">
<link rel="next" href="partial_sort.html" title="Range Algorithm - partial_sort">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="merge.html" title="merge">
<link rel="next" href="partial_sort.html" title="partial_sort">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="merge.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="partial_sort.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="merge.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="partial_sort.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - nth_element">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element"></a><a class="link" href="nth_element.html" title="Range Algorithm - nth_element">
Range Algorithm - nth_element</a>
<a name="range.reference.algorithms.mutating.nth_element"></a><a class="link" href="nth_element.html" title="nth_element">nth_element</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element.prototype"></a><h6>
<a name="id3055090"></a>
<a class="link" href="nth_element.html#range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element.prototype">Prototype</a>
<a name="range.reference.algorithms.mutating.nth_element.prototype"></a><h6>
<a name="id691010"></a>
<a class="link" href="nth_element.html#range.reference.algorithms.mutating.nth_element.prototype">Prototype</a>
</h6>
<p>
@ -58,9 +57,9 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element.description"></a><h6>
<a name="id3055618"></a>
<a class="link" href="nth_element.html#range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element.description">Description</a>
<a name="range.reference.algorithms.mutating.nth_element.description"></a><h6>
<a name="id691529"></a>
<a class="link" href="nth_element.html#range.reference.algorithms.mutating.nth_element.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">nth_element</span></code> partially
@ -69,67 +68,67 @@
such that the element corresponding with the iterator <code class="computeroutput"><span class="identifier">nth</span></code>
is the same as the element that would be in that position if <code class="computeroutput"><span class="identifier">rng</span></code> has been sorted.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element.definition"></a><h6>
<a name="id3055700"></a>
<a class="link" href="nth_element.html#range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element.definition">Definition</a>
<a name="range.reference.algorithms.mutating.nth_element.definition"></a><h6>
<a name="id691606"></a>
<a class="link" href="nth_element.html#range.reference.algorithms.mutating.nth_element.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">nth_element</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element.requirements"></a><h6>
<a name="id3055775"></a>
<a class="link" href="nth_element.html#range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element.requirements">Requirements</a>
<a name="range.reference.algorithms.mutating.nth_element.requirements"></a><h6>
<a name="id691676"></a>
<a class="link" href="nth_element.html#range.reference.algorithms.mutating.nth_element.requirements">Requirements</a>
</h6>
<p>
<span class="bold"><strong>For the non-predicate version:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
mutable.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a model of the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a model of the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>.
</li>
<li class="listitem">
The ordering relation on <code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a <span class="bold"><strong><span class="emphasis"><em>strict weak ordering</em></span></strong></span>,
as defined in the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
requirements.
</li>
The ordering relation on <code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a <span class="bold"><strong><span class="emphasis"><em>strict weak ordering</em></span></strong></span>,
as defined in the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
requirements.
</li>
</ul></div>
<p>
<span class="bold"><strong>For the predicate version:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
mutable.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">BinaryPredicate</span></code> is
a model of the <code class="computeroutput"><span class="identifier">StrictWeakOrderingConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">BinaryPredicate</span></code> is
a model of the <code class="computeroutput"><span class="identifier">StrictWeakOrderingConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is convertible to both of <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code>'s
argument types.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is convertible to both of <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code>'s
argument types.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element.complexity"></a><h6>
<a name="id3056012"></a>
<a class="link" href="nth_element.html#range.reference.algorithms.range_algorithm_mutating_algorithms.nth_element.complexity">Complexity</a>
<a name="range.reference.algorithms.mutating.nth_element.complexity"></a><h6>
<a name="id691923"></a>
<a class="link" href="nth_element.html#range.reference.algorithms.mutating.nth_element.complexity">Complexity</a>
</h6>
<p>
On average, linear in <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code>.
@ -145,7 +144,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="merge.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="partial_sort.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="merge.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="partial_sort.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,35 +1,34 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - partial_sort</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<title>partial_sort</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="nth_element.html" title="Range Algorithm - nth_element">
<link rel="next" href="partition.html" title="Range Algorithm - partition">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="nth_element.html" title="nth_element">
<link rel="next" href="partition.html" title="partition">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="nth_element.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="partition.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="nth_element.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="partition.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - partial_sort">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort"></a><a class="link" href="partial_sort.html" title="Range Algorithm - partial_sort">
Range Algorithm - partial_sort</a>
<a name="range.reference.algorithms.mutating.partial_sort"></a><a class="link" href="partial_sort.html" title="partial_sort">partial_sort</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort.prototype"></a><h6>
<a name="id3056083"></a>
<a class="link" href="partial_sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort.prototype">Prototype</a>
<a name="range.reference.algorithms.mutating.partial_sort.prototype"></a><h6>
<a name="id691988"></a>
<a class="link" href="partial_sort.html#range.reference.algorithms.mutating.partial_sort.prototype">Prototype</a>
</h6>
<p>
@ -58,9 +57,9 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort.description"></a><h6>
<a name="id3056612"></a>
<a class="link" href="partial_sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort.description">Description</a>
<a name="range.reference.algorithms.mutating.partial_sort.description"></a><h6>
<a name="id692508"></a>
<a class="link" href="partial_sort.html#range.reference.algorithms.mutating.partial_sort.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">partial_sort</span></code> rearranges
@ -74,67 +73,67 @@
is less than another by using <code class="computeroutput"><span class="keyword">operator</span><span class="special">&lt;()</span></code>. The predicate versions use the
predicate instead.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort.definition"></a><h6>
<a name="id3056798"></a>
<a class="link" href="partial_sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort.definition">Definition</a>
<a name="range.reference.algorithms.mutating.partial_sort.definition"></a><h6>
<a name="id692685"></a>
<a class="link" href="partial_sort.html#range.reference.algorithms.mutating.partial_sort.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">partial_sort</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort.requirements"></a><h6>
<a name="id3056873"></a>
<a class="link" href="partial_sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort.requirements">Requirements</a>
<a name="range.reference.algorithms.mutating.partial_sort.requirements"></a><h6>
<a name="id692756"></a>
<a class="link" href="partial_sort.html#range.reference.algorithms.mutating.partial_sort.requirements">Requirements</a>
</h6>
<p>
<span class="bold"><strong>For the non-predicate version:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
mutable.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a model of the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a model of the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>.
</li>
<li class="listitem">
The ordering relation on <code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a <span class="bold"><strong><span class="emphasis"><em>strict weak ordering</em></span></strong></span>,
as defined in the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
requirements.
</li>
The ordering relation on <code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a <span class="bold"><strong><span class="emphasis"><em>strict weak ordering</em></span></strong></span>,
as defined in the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
requirements.
</li>
</ul></div>
<p>
<span class="bold"><strong>For the predicate version:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
mutable.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">BinaryPredicate</span></code> is
a model of the <code class="computeroutput"><span class="identifier">StrictWeakOrderingConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">BinaryPredicate</span></code> is
a model of the <code class="computeroutput"><span class="identifier">StrictWeakOrderingConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is convertible to both of <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code>'s
argument types.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is convertible to both of <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code>'s
argument types.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort.complexity"></a><h6>
<a name="id3057110"></a>
<a class="link" href="partial_sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.partial_sort.complexity">Complexity</a>
<a name="range.reference.algorithms.mutating.partial_sort.complexity"></a><h6>
<a name="id693003"></a>
<a class="link" href="partial_sort.html#range.reference.algorithms.mutating.partial_sort.complexity">Complexity</a>
</h6>
<p>
Approximately <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span> <span class="special">*</span> <span class="identifier">log</span><span class="special">(</span><span class="identifier">distance</span><span class="special">(</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">middle</span><span class="special">))</span></code> comparisons.
@ -150,7 +149,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="nth_element.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="partition.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="nth_element.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="partition.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,35 +1,34 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - partition</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<title>partition</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="partial_sort.html" title="Range Algorithm - partial_sort">
<link rel="next" href="random_shuffle.html" title="Range Algorithm - random_shuffle">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="partial_sort.html" title="partial_sort">
<link rel="next" href="random_shuffle.html" title="random_shuffle">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="partial_sort.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="random_shuffle.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="partial_sort.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="random_shuffle.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - partition">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partition"></a><a class="link" href="partition.html" title="Range Algorithm - partition">
Range Algorithm - partition</a>
<a name="range.reference.algorithms.mutating.partition"></a><a class="link" href="partition.html" title="partition">partition</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partition.prototype"></a><h6>
<a name="id3057234"></a>
<a class="link" href="partition.html#range.reference.algorithms.range_algorithm_mutating_algorithms.partition.prototype">Prototype</a>
<a name="range.reference.algorithms.mutating.partition.prototype"></a><h6>
<a name="id693119"></a>
<a class="link" href="partition.html#range.reference.algorithms.mutating.partition.prototype">Prototype</a>
</h6>
<p>
@ -66,9 +65,9 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partition.description"></a><h6>
<a name="id3057821"></a>
<a class="link" href="partition.html#range.reference.algorithms.range_algorithm_mutating_algorithms.partition.description">Description</a>
<a name="range.reference.algorithms.mutating.partition.description"></a><h6>
<a name="id693695"></a>
<a class="link" href="partition.html#range.reference.algorithms.mutating.partition.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">partition</span></code> orders the
@ -80,36 +79,36 @@
have a configurable range_return, <code class="computeroutput"><span class="identifier">found</span></code>
corresponds to the middle iterator.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partition.definition"></a><h6>
<a name="id3057908"></a>
<a class="link" href="partition.html#range.reference.algorithms.range_algorithm_mutating_algorithms.partition.definition">Definition</a>
<a name="range.reference.algorithms.mutating.partition.definition"></a><h6>
<a name="id693774"></a>
<a class="link" href="partition.html#range.reference.algorithms.mutating.partition.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">partition</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partition.requirements"></a><h6>
<a name="id3057981"></a>
<a class="link" href="partition.html#range.reference.algorithms.range_algorithm_mutating_algorithms.partition.requirements">Requirements</a>
<a name="range.reference.algorithms.mutating.partition.requirements"></a><h6>
<a name="id693845"></a>
<a class="link" href="partition.html#range.reference.algorithms.mutating.partition.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a model
of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward Range</a>
Concept.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a
model of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">UnaryPredicate</span></code> is a
model of the <code class="computeroutput"><span class="identifier">PredicateConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">UnaryPredicate</span></code> is
a model of the <code class="computeroutput"><span class="identifier">PredicateConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s value
type is convertible to <code class="computeroutput"><span class="identifier">UnaryPredicate</span></code>'s
argument type.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s value
type is convertible to <code class="computeroutput"><span class="identifier">UnaryPredicate</span></code>'s
argument type.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.partition.complexity"></a><h6>
<a name="id3058084"></a>
<a class="link" href="partition.html#range.reference.algorithms.range_algorithm_mutating_algorithms.partition.complexity">Complexity</a>
<a name="range.reference.algorithms.mutating.partition.complexity"></a><h6>
<a name="id693947"></a>
<a class="link" href="partition.html#range.reference.algorithms.mutating.partition.complexity">Complexity</a>
</h6>
<p>
Linear. Exactly <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code> applications of <code class="computeroutput"><span class="identifier">pred</span></code>,
@ -127,7 +126,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="partial_sort.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="random_shuffle.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="partial_sort.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="random_shuffle.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,35 +1,34 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - random_shuffle</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<title>random_shuffle</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="partition.html" title="Range Algorithm - partition">
<link rel="next" href="remove.html" title="Range Algorithm - remove">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="partition.html" title="partition">
<link rel="next" href="remove.html" title="remove">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="partition.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="remove.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="partition.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="remove.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - random_shuffle">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle"></a><a class="link" href="random_shuffle.html" title="Range Algorithm - random_shuffle">
Range Algorithm - random_shuffle</a>
<a name="range.reference.algorithms.mutating.random_shuffle"></a><a class="link" href="random_shuffle.html" title="random_shuffle">random_shuffle</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.prototype"></a><h6>
<a name="id3058202"></a>
<a class="link" href="random_shuffle.html#range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.prototype">Prototype</a>
<a name="range.reference.algorithms.mutating.random_shuffle.prototype"></a><h6>
<a name="id694058"></a>
<a class="link" href="random_shuffle.html#range.reference.algorithms.mutating.random_shuffle.prototype">Prototype</a>
</h6>
<p>
@ -48,9 +47,9 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.description"></a><h6>
<a name="id3058593"></a>
<a class="link" href="random_shuffle.html#range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.description">Description</a>
<a name="range.reference.algorithms.mutating.random_shuffle.description"></a><h6>
<a name="id694442"></a>
<a class="link" href="random_shuffle.html#range.reference.algorithms.mutating.random_shuffle.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">random_shuffle</span></code> randomly
@ -60,56 +59,56 @@
use an internal random number generator. The versions of <code class="computeroutput"><span class="identifier">random_shuffle</span></code> that do specify a <code class="computeroutput"><span class="identifier">Generator</span></code> use this instead. Returns
the shuffles range.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.definition"></a><h6>
<a name="id3058689"></a>
<a class="link" href="random_shuffle.html#range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.definition">Definition</a>
<a name="range.reference.algorithms.mutating.random_shuffle.definition"></a><h6>
<a name="id694530"></a>
<a class="link" href="random_shuffle.html#range.reference.algorithms.mutating.random_shuffle.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">random_shuffle</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.requirements"></a><h6>
<a name="id3058764"></a>
<a class="link" href="random_shuffle.html#range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.requirements">Requirements</a>
<a name="range.reference.algorithms.mutating.random_shuffle.requirements"></a><h6>
<a name="id694601"></a>
<a class="link" href="random_shuffle.html#range.reference.algorithms.mutating.random_shuffle.requirements">Requirements</a>
</h6>
<p>
<span class="bold"><strong>For the version without a Generator:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li></ul></div>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li></ul></div>
<p>
<span class="bold"><strong>For the version with a Generator:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Generator</span></code> is a model
of the <code class="computeroutput"><span class="identifier">RandomNumberGeneratorConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">Generator</span></code> is a model
of the <code class="computeroutput"><span class="identifier">RandomNumberGeneratorConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
distance type is convertible to <code class="computeroutput"><span class="identifier">Generator</span></code>'s
argument type.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
distance type is convertible to <code class="computeroutput"><span class="identifier">Generator</span></code>'s
argument type.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.precondition_"></a><h6>
<a name="id3058911"></a>
<a class="link" href="random_shuffle.html#range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.precondition_">Precondition:</a>
<a name="range.reference.algorithms.mutating.random_shuffle.precondition_"></a><h6>
<a name="id694751"></a>
<a class="link" href="random_shuffle.html#range.reference.algorithms.mutating.random_shuffle.precondition_">Precondition:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
<code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code>
is less than <code class="computeroutput"><span class="identifier">gen</span></code>'s
maximum value.
</li></ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.complexity"></a><h6>
<a name="id3058977"></a>
<a class="link" href="random_shuffle.html#range.reference.algorithms.range_algorithm_mutating_algorithms.random_shuffle.complexity">Complexity</a>
<code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code>
is less than <code class="computeroutput"><span class="identifier">gen</span></code>'s
maximum value.
</li></ul></div>
<a name="range.reference.algorithms.mutating.random_shuffle.complexity"></a><h6>
<a name="id694815"></a>
<a class="link" href="random_shuffle.html#range.reference.algorithms.mutating.random_shuffle.complexity">Complexity</a>
</h6>
<p>
Linear. If <code class="computeroutput"><span class="special">!</span><span class="identifier">empty</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code>, exactly <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span> <span class="special">-</span> <span class="number">1</span></code>
@ -126,7 +125,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="partition.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="remove.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="partition.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="remove.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,35 +1,34 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - remove</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<title>remove</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="random_shuffle.html" title="Range Algorithm - random_shuffle">
<link rel="next" href="remove_if.html" title="Range Algorithm - remove_if">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="random_shuffle.html" title="random_shuffle">
<link rel="next" href="remove_copy.html" title="remove_copy">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="random_shuffle.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="remove_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="random_shuffle.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="remove_copy.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - remove">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove"></a><a class="link" href="remove.html" title="Range Algorithm - remove">
Range Algorithm - remove</a>
<a name="range.reference.algorithms.mutating.remove"></a><a class="link" href="remove.html" title="remove">remove</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove.prototype"></a><h6>
<a name="id3059089"></a>
<a class="link" href="remove.html#range.reference.algorithms.range_algorithm_mutating_algorithms.remove.prototype">Prototype</a>
<a name="range.reference.algorithms.mutating.remove.prototype"></a><h6>
<a name="id694919"></a>
<a class="link" href="remove.html#range.reference.algorithms.mutating.remove.prototype">Prototype</a>
</h6>
<p>
@ -66,9 +65,9 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove.description"></a><h6>
<a name="id3059711"></a>
<a class="link" href="remove.html#range.reference.algorithms.range_algorithm_mutating_algorithms.remove.description">Description</a>
<a name="range.reference.algorithms.mutating.remove.description"></a><h6>
<a name="id695536"></a>
<a class="link" href="remove.html#range.reference.algorithms.mutating.remove.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">remove</span></code> removes from
@ -83,39 +82,39 @@
<span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code>
are dereferenceable, but the elements are unspecified.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove.definition"></a><h6>
<a name="id3059949"></a>
<a class="link" href="remove.html#range.reference.algorithms.range_algorithm_mutating_algorithms.remove.definition">Definition</a>
<a name="range.reference.algorithms.mutating.remove.definition"></a><h6>
<a name="id695762"></a>
<a class="link" href="remove.html#range.reference.algorithms.mutating.remove.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">remove</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove.requirements"></a><h6>
<a name="id3060023"></a>
<a class="link" href="remove.html#range.reference.algorithms.range_algorithm_mutating_algorithms.remove.requirements">Requirements</a>
<a name="range.reference.algorithms.mutating.remove.requirements"></a><h6>
<a name="id695833"></a>
<a class="link" href="remove.html#range.reference.algorithms.mutating.remove.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a model
of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward Range</a>
Concept.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a
model of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Value</span></code> is a model of
the <code class="computeroutput"><span class="identifier">EqualityComparableConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">Value</span></code> is a model
of the <code class="computeroutput"><span class="identifier">EqualityComparableConcept</span></code>.
</li>
<li class="listitem">
Objects of type <code class="computeroutput"><span class="identifier">Value</span></code>
can be compared for equality with objects of <code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s
value type.
</li>
Objects of type <code class="computeroutput"><span class="identifier">Value</span></code>
can be compared for equality with objects of <code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s
value type.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove.complexity"></a><h6>
<a name="id3060139"></a>
<a class="link" href="remove.html#range.reference.algorithms.range_algorithm_mutating_algorithms.remove.complexity">Complexity</a>
<a name="range.reference.algorithms.mutating.remove.complexity"></a><h6>
<a name="id695954"></a>
<a class="link" href="remove.html#range.reference.algorithms.mutating.remove.complexity">Complexity</a>
</h6>
<p>
Linear. <code class="computeroutput"><span class="identifier">remove</span></code> performs
@ -133,7 +132,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="random_shuffle.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="remove_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="random_shuffle.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="remove_copy.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,108 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>remove_copy</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="remove.html" title="remove">
<link rel="next" href="remove_copy_if.html" title="remove_copy_if">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="remove.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="remove_copy_if.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.mutating.remove_copy"></a><a class="link" href="remove_copy.html" title="remove_copy">remove_copy</a>
</h5></div></div></div>
<a name="range.reference.algorithms.mutating.remove_copy.prototype"></a><h6>
<a name="id696029"></a>
<a class="link" href="remove_copy.html#range.reference.algorithms.mutating.remove_copy.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ForwardRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Outputiterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Value</span><span class="special">&gt;</span>
<span class="identifier">OutputIterator</span>
<span class="identifier">remove_copy</span><span class="special">(</span><span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span><span class="special">&amp;</span> <span class="identifier">val</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ForwardRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Value</span><span class="special">&gt;</span>
<span class="identifier">OutputIterator</span>
<span class="identifier">remove_copy</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span><span class="special">&amp;</span> <span class="identifier">val</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.mutating.remove_copy.description"></a><h6>
<a name="id696332"></a>
<a class="link" href="remove_copy.html#range.reference.algorithms.mutating.remove_copy.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">remove_copy</span></code> copied all
of the elements <code class="computeroutput"><span class="identifier">x</span></code> from
<code class="computeroutput"><span class="identifier">rng</span></code> for which <code class="computeroutput"><span class="identifier">x</span> <span class="special">==</span> <span class="identifier">val</span></code> is <code class="computeroutput"><span class="keyword">false</span></code>.
</p>
<a name="range.reference.algorithms.mutating.remove_copy.definition"></a><h6>
<a name="id696418"></a>
<a class="link" href="remove_copy.html#range.reference.algorithms.mutating.remove_copy.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">remove_copy</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.mutating.remove_copy.requirements"></a><h6>
<a name="id696488"></a>
<a class="link" href="remove_copy.html#range.reference.algorithms.mutating.remove_copy.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a
model of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Value</span></code> is a model
of the <code class="computeroutput"><span class="identifier">EqualityComparableConcept</span></code>.
</li>
<li class="listitem">
Objects of type <code class="computeroutput"><span class="identifier">Value</span></code>
can be compared for equality with objects of <code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s
value type.
</li>
</ul></div>
<a name="range.reference.algorithms.mutating.remove_copy.complexity"></a><h6>
<a name="id696609"></a>
<a class="link" href="remove_copy.html#range.reference.algorithms.mutating.remove_copy.complexity">Complexity</a>
</h6>
<p>
Linear. <code class="computeroutput"><span class="identifier">remove_copy</span></code> performs
exactly <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code>
comparisons for equality.
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="remove.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="remove_copy_if.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,103 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>remove_copy_if</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="remove_copy.html" title="remove_copy">
<link rel="next" href="remove_if.html" title="remove_if">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="remove_copy.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="remove_if.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.mutating.remove_copy_if"></a><a class="link" href="remove_copy_if.html" title="remove_copy_if">remove_copy_if</a>
</h5></div></div></div>
<a name="range.reference.algorithms.mutating.remove_copy_if.prototype"></a><h6>
<a name="id696683"></a>
<a class="link" href="remove_copy_if.html#range.reference.algorithms.mutating.remove_copy_if.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ForwardRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Outputiterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">UnaryPred</span><span class="special">&gt;</span>
<span class="identifier">OutputIterator</span>
<span class="identifier">remove_copy_if</span><span class="special">(</span><span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">,</span> <span class="identifier">UnaryPred</span> <span class="identifier">pred</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ForwardRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">UnaryPred</span><span class="special">&gt;</span>
<span class="identifier">OutputIterator</span>
<span class="identifier">remove_copy_if</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">,</span> <span class="identifier">UnaryPred</span> <span class="identifier">pred</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.mutating.remove_copy_if.description"></a><h6>
<a name="id696964"></a>
<a class="link" href="remove_copy_if.html#range.reference.algorithms.mutating.remove_copy_if.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">remove_copy_if</span></code> copied
all of the elements <code class="computeroutput"><span class="identifier">x</span></code>
from <code class="computeroutput"><span class="identifier">rng</span></code> for which <code class="computeroutput"><span class="identifier">pred</span><span class="special">(</span><span class="identifier">x</span><span class="special">)</span></code>
is <code class="computeroutput"><span class="keyword">false</span></code>.
</p>
<a name="range.reference.algorithms.mutating.remove_copy_if.definition"></a><h6>
<a name="id697054"></a>
<a class="link" href="remove_copy_if.html#range.reference.algorithms.mutating.remove_copy_if.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">remove_copy_if</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.mutating.remove_copy_if.requirements"></a><h6>
<a name="id697124"></a>
<a class="link" href="remove_copy_if.html#range.reference.algorithms.mutating.remove_copy_if.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a
model of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">UnaryPred</span></code> is a model
of the <code class="computeroutput"><span class="identifier">UnaryPredicateConcept</span></code>.
</li>
</ul></div>
<a name="range.reference.algorithms.mutating.remove_copy_if.complexity"></a><h6>
<a name="id697217"></a>
<a class="link" href="remove_copy_if.html#range.reference.algorithms.mutating.remove_copy_if.complexity">Complexity</a>
</h6>
<p>
Linear. <code class="computeroutput"><span class="identifier">remove_copy_if</span></code>
performs exactly <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code> comparisons with UnaryPred.
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="remove_copy.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="remove_if.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,35 +1,34 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - remove_if</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<title>remove_if</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="remove.html" title="Range Algorithm - remove">
<link rel="next" href="replace.html" title="Range Algorithm - replace">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="remove_copy_if.html" title="remove_copy_if">
<link rel="next" href="replace.html" title="replace">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="remove.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="replace.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="remove_copy_if.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="replace.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - remove_if">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if"></a><a class="link" href="remove_if.html" title="Range Algorithm - remove_if">
Range Algorithm - remove_if</a>
<a name="range.reference.algorithms.mutating.remove_if"></a><a class="link" href="remove_if.html" title="remove_if">remove_if</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if.prototype"></a><h6>
<a name="id3060223"></a>
<a class="link" href="remove_if.html#range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if.prototype">Prototype</a>
<a name="range.reference.algorithms.mutating.remove_if.prototype"></a><h6>
<a name="id697291"></a>
<a class="link" href="remove_if.html#range.reference.algorithms.mutating.remove_if.prototype">Prototype</a>
</h6>
<p>
@ -66,9 +65,9 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if.description"></a><h6>
<a name="id3060807"></a>
<a class="link" href="remove_if.html#range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if.description">Description</a>
<a name="range.reference.algorithms.mutating.remove_if.description"></a><h6>
<a name="id697867"></a>
<a class="link" href="remove_if.html#range.reference.algorithms.mutating.remove_if.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">remove_if</span></code> removes from
@ -82,39 +81,39 @@
the range <code class="computeroutput"><span class="special">[</span><span class="identifier">new_last</span><span class="special">,</span> <span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code> are dereferenceable, but the elements
are unspecified.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if.definition"></a><h6>
<a name="id3061039"></a>
<a class="link" href="remove_if.html#range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if.definition">Definition</a>
<a name="range.reference.algorithms.mutating.remove_if.definition"></a><h6>
<a name="id698089"></a>
<a class="link" href="remove_if.html#range.reference.algorithms.mutating.remove_if.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">remove_if</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if.requirements"></a><h6>
<a name="id3061113"></a>
<a class="link" href="remove_if.html#range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if.requirements">Requirements</a>
<a name="range.reference.algorithms.mutating.remove_if.requirements"></a><h6>
<a name="id698160"></a>
<a class="link" href="remove_if.html#range.reference.algorithms.mutating.remove_if.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a model
of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward Range</a>
Concept.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a
model of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">UnaryPredicate</span></code> is a
model of the <code class="computeroutput"><span class="identifier">PredicateConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">UnaryPredicate</span></code> is
a model of the <code class="computeroutput"><span class="identifier">PredicateConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s value
type is convertible to <code class="computeroutput"><span class="identifier">UnaryPredicate</span></code>'s
argument type.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s value
type is convertible to <code class="computeroutput"><span class="identifier">UnaryPredicate</span></code>'s
argument type.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if.complexity"></a><h6>
<a name="id3061230"></a>
<a class="link" href="remove_if.html#range.reference.algorithms.range_algorithm_mutating_algorithms.remove_if.complexity">Complexity</a>
<a name="range.reference.algorithms.mutating.remove_if.complexity"></a><h6>
<a name="id698282"></a>
<a class="link" href="remove_if.html#range.reference.algorithms.mutating.remove_if.complexity">Complexity</a>
</h6>
<p>
Linear. <code class="computeroutput"><span class="identifier">remove_if</span></code> performs
@ -132,7 +131,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="remove.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="replace.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="remove_copy_if.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="replace.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,35 +1,34 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - replace</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<title>replace</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="remove_if.html" title="Range Algorithm - remove_if">
<link rel="next" href="replace_if.html" title="Range Algorithm - replace_if">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="remove_if.html" title="remove_if">
<link rel="next" href="replace_copy.html" title="replace_copy">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="remove_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="replace_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="remove_if.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="replace_copy.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - replace">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace"></a><a class="link" href="replace.html" title="Range Algorithm - replace">
Range Algorithm - replace</a>
<a name="range.reference.algorithms.mutating.replace"></a><a class="link" href="replace.html" title="replace">replace</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace.prototype"></a><h6>
<a name="id3061322"></a>
<a class="link" href="replace.html#range.reference.algorithms.range_algorithm_mutating_algorithms.replace.prototype">Prototype</a>
<a name="range.reference.algorithms.mutating.replace.prototype"></a><h6>
<a name="id698368"></a>
<a class="link" href="replace.html#range.reference.algorithms.mutating.replace.prototype">Prototype</a>
</h6>
<p>
@ -48,54 +47,54 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace.description"></a><h6>
<a name="id3061640"></a>
<a class="link" href="replace.html#range.reference.algorithms.range_algorithm_mutating_algorithms.replace.description">Description</a>
<a name="range.reference.algorithms.mutating.replace.description"></a><h6>
<a name="id698680"></a>
<a class="link" href="replace.html#range.reference.algorithms.mutating.replace.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">replace</span></code> every element
in <code class="computeroutput"><span class="identifier">rng</span></code> equal to <code class="computeroutput"><span class="identifier">what</span></code> with <code class="computeroutput"><span class="identifier">with_what</span></code>.
Return a reference to <code class="computeroutput"><span class="identifier">rng</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace.definition"></a><h6>
<a name="id3061721"></a>
<a class="link" href="replace.html#range.reference.algorithms.range_algorithm_mutating_algorithms.replace.definition">Definition</a>
<a name="range.reference.algorithms.mutating.replace.definition"></a><h6>
<a name="id698755"></a>
<a class="link" href="replace.html#range.reference.algorithms.mutating.replace.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">replace</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace.requirements"></a><h6>
<a name="id3061795"></a>
<a class="link" href="replace.html#range.reference.algorithms.range_algorithm_mutating_algorithms.replace.requirements">Requirements</a>
<a name="range.reference.algorithms.mutating.replace.requirements"></a><h6>
<a name="id698825"></a>
<a class="link" href="replace.html#range.reference.algorithms.mutating.replace.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a model
of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward Range</a>
Concept.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a
model of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Value</span></code> is convertible
to <code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s value
type.
</li>
<code class="computeroutput"><span class="identifier">Value</span></code> is convertible
to <code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s
value type.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Value</span></code> is a model of
the <code class="computeroutput"><span class="identifier">AssignableConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">Value</span></code> is a model
of the <code class="computeroutput"><span class="identifier">AssignableConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Value</span></code> is a model of
the <code class="computeroutput"><span class="identifier">EqualityComparableConcept</span></code>,
and may be compared for equality with objects of <code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s
value type.
</li>
<code class="computeroutput"><span class="identifier">Value</span></code> is a model
of the <code class="computeroutput"><span class="identifier">EqualityComparableConcept</span></code>,
and may be compared for equality with objects of <code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s
value type.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace.complexity"></a><h6>
<a name="id3061947"></a>
<a class="link" href="replace.html#range.reference.algorithms.range_algorithm_mutating_algorithms.replace.complexity">Complexity</a>
<a name="range.reference.algorithms.mutating.replace.complexity"></a><h6>
<a name="id698985"></a>
<a class="link" href="replace.html#range.reference.algorithms.mutating.replace.complexity">Complexity</a>
</h6>
<p>
Linear. <code class="computeroutput"><span class="identifier">replace</span></code> performs
@ -113,7 +112,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="remove_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="replace_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="remove_if.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="replace_copy.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,111 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>replace_copy</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="replace.html" title="replace">
<link rel="next" href="replace_copy_if.html" title="replace_copy_if">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="replace.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="replace_copy_if.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.mutating.replace_copy"></a><a class="link" href="replace_copy.html" title="replace_copy">replace_copy</a>
</h5></div></div></div>
<a name="range.reference.algorithms.mutating.replace_copy.prototype"></a><h6>
<a name="id699084"></a>
<a class="link" href="replace_copy.html#range.reference.algorithms.mutating.replace_copy.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ForwardRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Value</span><span class="special">&gt;</span>
<span class="identifier">OutputIterator</span> <span class="identifier">replace_copy</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Value</span><span class="special">&amp;</span> <span class="identifier">what</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span><span class="special">&amp;</span> <span class="identifier">with_what</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.mutating.replace_copy.description"></a><h6>
<a name="id699279"></a>
<a class="link" href="replace_copy.html#range.reference.algorithms.mutating.replace_copy.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">replace_copy</span></code> copy every
element <code class="computeroutput"><span class="identifier">x</span></code> in <code class="computeroutput"><span class="identifier">rng</span></code> such that the corresponding element
in the output range <code class="computeroutput"><span class="identifier">y</span></code>
is <code class="computeroutput"><span class="identifier">x</span> <span class="special">==</span>
<span class="identifier">what</span> <span class="special">?</span>
<span class="identifier">with_what</span> <span class="special">:</span>
<span class="identifier">x</span></code>.
</p>
<a name="range.reference.algorithms.mutating.replace_copy.definition"></a><h6>
<a name="id699388"></a>
<a class="link" href="replace_copy.html#range.reference.algorithms.mutating.replace_copy.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">replace_copy</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.mutating.replace_copy.requirements"></a><h6>
<a name="id699458"></a>
<a class="link" href="replace_copy.html#range.reference.algorithms.mutating.replace_copy.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a
model of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Value</span></code> is convertible
to <code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s
value type.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Value</span></code> is a model
of the <code class="computeroutput"><span class="identifier">AssignableConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">OutputIterator</span></code> is
a model of the <code class="computeroutput"><span class="identifier">OutputIteratorConcept</span></code>.
</li>
</ul></div>
<a name="range.reference.algorithms.mutating.replace_copy.complexity"></a><h6>
<a name="id699606"></a>
<a class="link" href="replace_copy.html#range.reference.algorithms.mutating.replace_copy.complexity">Complexity</a>
</h6>
<p>
Linear. <code class="computeroutput"><span class="identifier">replace_copy</span></code>
performs exactly <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code>.
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="replace.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="replace_copy_if.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,113 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>replace_copy_if</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="replace_copy.html" title="replace_copy">
<link rel="next" href="replace_if.html" title="replace_if">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="replace_copy.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="replace_if.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.mutating.replace_copy_if"></a><a class="link" href="replace_copy_if.html" title="replace_copy_if">replace_copy_if</a>
</h5></div></div></div>
<a name="range.reference.algorithms.mutating.replace_copy_if.prototype"></a><h6>
<a name="id699680"></a>
<a class="link" href="replace_copy_if.html#range.reference.algorithms.mutating.replace_copy_if.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ForwardRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">UnaryPredicate</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Value</span><span class="special">&gt;</span>
<span class="identifier">OutputIterator</span> <span class="identifier">replace_copy_if</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">,</span>
<span class="identifier">UnaryPredicate</span> <span class="identifier">pred</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span><span class="special">&amp;</span> <span class="identifier">with_what</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.mutating.replace_copy_if.description"></a><h6>
<a name="id699881"></a>
<a class="link" href="replace_copy_if.html#range.reference.algorithms.mutating.replace_copy_if.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">replace_copy_if</span></code> copy
every element <code class="computeroutput"><span class="identifier">x</span></code> in <code class="computeroutput"><span class="identifier">rng</span></code> such that the corresponding element
in the output range <code class="computeroutput"><span class="identifier">y</span></code>
is <code class="computeroutput"><span class="identifier">pred</span><span class="special">(</span><span class="identifier">x</span><span class="special">)</span> <span class="special">?</span> <span class="identifier">with_what</span>
<span class="special">:</span> <span class="identifier">x</span></code>.
</p>
<a name="range.reference.algorithms.mutating.replace_copy_if.definition"></a><h6>
<a name="id699992"></a>
<a class="link" href="replace_copy_if.html#range.reference.algorithms.mutating.replace_copy_if.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">replace_copy_if</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.mutating.replace_copy_if.requirements"></a><h6>
<a name="id700063"></a>
<a class="link" href="replace_copy_if.html#range.reference.algorithms.mutating.replace_copy_if.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a
model of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Value</span></code> is convertible
to <code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s
value type.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Value</span></code> is a model
of the <code class="computeroutput"><span class="identifier">AssignableConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">OutputIterator</span></code> is
a model of the <code class="computeroutput"><span class="identifier">OutputIteratorConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">UnaryPredicate</span></code> is
a model of the <code class="computeroutput"><span class="identifier">UnaryPredicateConcept</span></code>.
</li>
</ul></div>
<a name="range.reference.algorithms.mutating.replace_copy_if.complexity"></a><h6>
<a name="id700239"></a>
<a class="link" href="replace_copy_if.html#range.reference.algorithms.mutating.replace_copy_if.complexity">Complexity</a>
</h6>
<p>
Linear. <code class="computeroutput"><span class="identifier">replace_copy_if</span></code>
performs exactly <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code> evaluations of <code class="computeroutput"><span class="identifier">pred</span></code>.
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="replace_copy.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="replace_if.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,35 +1,34 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - replace_if</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<title>replace_if</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="replace.html" title="Range Algorithm - replace">
<link rel="next" href="rotate.html" title="Range Algorithm - rotate">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="replace_copy_if.html" title="replace_copy_if">
<link rel="next" href="reverse.html" title="reverse">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="replace.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="rotate.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="replace_copy_if.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="reverse.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - replace_if">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if"></a><a class="link" href="replace_if.html" title="Range Algorithm - replace_if">
Range Algorithm - replace_if</a>
<a name="range.reference.algorithms.mutating.replace_if"></a><a class="link" href="replace_if.html" title="replace_if">replace_if</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if.prototype"></a><h6>
<a name="id3062057"></a>
<a class="link" href="replace_if.html#range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if.prototype">Prototype</a>
<a name="range.reference.algorithms.mutating.replace_if.prototype"></a><h6>
<a name="id700324"></a>
<a class="link" href="replace_if.html#range.reference.algorithms.mutating.replace_if.prototype">Prototype</a>
</h6>
<p>
@ -42,57 +41,57 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if.description"></a><h6>
<a name="id3062382"></a>
<a class="link" href="replace_if.html#range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if.description">Description</a>
<a name="range.reference.algorithms.mutating.replace_if.description"></a><h6>
<a name="id700643"></a>
<a class="link" href="replace_if.html#range.reference.algorithms.mutating.replace_if.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">replace_if</span></code> replaces every
element <code class="computeroutput"><span class="identifier">x</span></code> in <code class="computeroutput"><span class="identifier">rng</span></code> for which <code class="computeroutput"><span class="identifier">pred</span><span class="special">(</span><span class="identifier">x</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">true</span></code> with <code class="computeroutput"><span class="identifier">with_what</span></code>.
Returns a reference to <code class="computeroutput"><span class="identifier">rng</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if.definition"></a><h6>
<a name="id3062499"></a>
<a class="link" href="replace_if.html#range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if.definition">Definition</a>
<a name="range.reference.algorithms.mutating.replace_if.definition"></a><h6>
<a name="id700754"></a>
<a class="link" href="replace_if.html#range.reference.algorithms.mutating.replace_if.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">replace_if</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if.requirements"></a><h6>
<a name="id3062574"></a>
<a class="link" href="replace_if.html#range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if.requirements">Requirements</a>
<a name="range.reference.algorithms.mutating.replace_if.requirements"></a><h6>
<a name="id700825"></a>
<a class="link" href="replace_if.html#range.reference.algorithms.mutating.replace_if.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a model
of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward Range</a>
Concept.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a
model of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">UnaryPredicate</span></code> is a
model of the <code class="computeroutput"><span class="identifier">PredicateConcept</span></code>
</li>
<code class="computeroutput"><span class="identifier">UnaryPredicate</span></code> is
a model of the <code class="computeroutput"><span class="identifier">PredicateConcept</span></code>
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s value
type is convertible to <code class="computeroutput"><span class="identifier">UnaryPredicate</span></code>'s
argument type.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s value
type is convertible to <code class="computeroutput"><span class="identifier">UnaryPredicate</span></code>'s
argument type.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Value</span></code> is convertible
to <code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s value
type.
</li>
<code class="computeroutput"><span class="identifier">Value</span></code> is convertible
to <code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s
value type.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">Value</span></code> is a model of
the <code class="computeroutput"><span class="identifier">AssignableConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">Value</span></code> is a model
of the <code class="computeroutput"><span class="identifier">AssignableConcept</span></code>.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if.complexity"></a><h6>
<a name="id3062742"></a>
<a class="link" href="replace_if.html#range.reference.algorithms.range_algorithm_mutating_algorithms.replace_if.complexity">Complexity</a>
<a name="range.reference.algorithms.mutating.replace_if.complexity"></a><h6>
<a name="id701001"></a>
<a class="link" href="replace_if.html#range.reference.algorithms.mutating.replace_if.complexity">Complexity</a>
</h6>
<p>
Linear. <code class="computeroutput"><span class="identifier">replace_if</span></code> performs
@ -111,7 +110,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="replace.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="rotate.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="replace_copy_if.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="reverse.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,96 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>reverse</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="replace_if.html" title="replace_if">
<link rel="next" href="reverse_copy.html" title="reverse_copy">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="replace_if.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="reverse_copy.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.mutating.reverse"></a><a class="link" href="reverse.html" title="reverse">reverse</a>
</h5></div></div></div>
<a name="range.reference.algorithms.mutating.reverse.prototype"></a><h6>
<a name="id701111"></a>
<a class="link" href="reverse.html#range.reference.algorithms.mutating.reverse.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalRange</span><span class="special">&gt;</span>
<span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">reverse</span><span class="special">(</span><span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalRange</span><span class="special">&gt;</span>
<span class="keyword">const</span> <span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">reverse</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.mutating.reverse.description"></a><h6>
<a name="id701281"></a>
<a class="link" href="reverse.html#range.reference.algorithms.mutating.reverse.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">reverse</span></code> reverses a range.
Returns a reference to the reversed range.
</p>
<a name="range.reference.algorithms.mutating.reverse.definition"></a><h6>
<a name="id701314"></a>
<a class="link" href="reverse.html#range.reference.algorithms.mutating.reverse.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">reverse</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.mutating.reverse.requirements"></a><h6>
<a name="id701385"></a>
<a class="link" href="reverse.html#range.reference.algorithms.mutating.reverse.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">BidirectionalRange</span></code>
is a model of the <a class="link" href="../../../concepts/bidirectional_range.html" title="Bidirectional Range">Bidirectional
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">BidirectionalRange</span></code>
is mutable.
</li>
</ul></div>
<a name="range.reference.algorithms.mutating.reverse.complexity"></a><h6>
<a name="id701451"></a>
<a class="link" href="reverse.html#range.reference.algorithms.mutating.reverse.complexity">Complexity</a>
</h6>
<p>
Linear. <code class="computeroutput"><span class="identifier">reverse</span></code> makes
<code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)/</span><span class="number">2</span></code> calls to <code class="computeroutput"><span class="identifier">iter_swap</span></code>.
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="replace_if.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="reverse_copy.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,100 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>reverse_copy</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="reverse.html" title="reverse">
<link rel="next" href="rotate.html" title="rotate">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="reverse.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="rotate.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.mutating.reverse_copy"></a><a class="link" href="reverse_copy.html" title="reverse_copy">reverse_copy</a>
</h5></div></div></div>
<a name="range.reference.algorithms.mutating.reverse_copy.prototype"></a><h6>
<a name="id701540"></a>
<a class="link" href="reverse_copy.html#range.reference.algorithms.mutating.reverse_copy.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">BidirectionalRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">&gt;</span>
<span class="identifier">OutputIterator</span> <span class="identifier">reverse_copy</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">BidirectionalRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.mutating.reverse_copy.description"></a><h6>
<a name="id701667"></a>
<a class="link" href="reverse_copy.html#range.reference.algorithms.mutating.reverse_copy.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">reverse_copy</span></code> copies the
elements from <code class="computeroutput"><span class="identifier">rng</span></code> in
reverse order to <code class="computeroutput"><span class="identifier">out</span></code>.
Returns the output iterator one passed the last copied element.
</p>
<a name="range.reference.algorithms.mutating.reverse_copy.definition"></a><h6>
<a name="id701723"></a>
<a class="link" href="reverse_copy.html#range.reference.algorithms.mutating.reverse_copy.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">reverse_copy</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.mutating.reverse_copy.requirements"></a><h6>
<a name="id701792"></a>
<a class="link" href="reverse_copy.html#range.reference.algorithms.mutating.reverse_copy.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">BidirectionalRange</span></code>
is a model of the <a class="link" href="../../../concepts/bidirectional_range.html" title="Bidirectional Range">Bidirectional
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">BidirectionalRange</span></code>
is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">OutputIterator</span></code> is
a model of the <code class="computeroutput"><span class="identifier">OutputIteratorConcept</span></code>.
</li>
</ul></div>
<a name="range.reference.algorithms.mutating.reverse_copy.complexity"></a><h6>
<a name="id701885"></a>
<a class="link" href="reverse_copy.html#range.reference.algorithms.mutating.reverse_copy.complexity">Complexity</a>
</h6>
<p>
Linear. <code class="computeroutput"><span class="identifier">reverse_copy</span></code>
makes <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code>
copies.
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="reverse.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="rotate.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,35 +1,34 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - rotate</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<title>rotate</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="replace_if.html" title="Range Algorithm - replace_if">
<link rel="next" href="sort.html" title="Range Algorithm - sort">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="reverse_copy.html" title="reverse_copy">
<link rel="next" href="rotate_copy.html" title="rotate_copy">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="replace_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="sort.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="reverse_copy.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="rotate_copy.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - rotate">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.rotate"></a><a class="link" href="rotate.html" title="Range Algorithm - rotate">
Range Algorithm - rotate</a>
<a name="range.reference.algorithms.mutating.rotate"></a><a class="link" href="rotate.html" title="rotate">rotate</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.prototype"></a><h6>
<a name="id3062861"></a>
<a class="link" href="rotate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.prototype">Prototype</a>
<a name="range.reference.algorithms.mutating.rotate.prototype"></a><h6>
<a name="id701961"></a>
<a class="link" href="rotate.html#range.reference.algorithms.mutating.rotate.prototype">Prototype</a>
</h6>
<p>
@ -37,58 +36,58 @@
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ForwardRange</span><span class="special">&gt;</span>
<span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rotate</span><span class="special">(</span><span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">ForwardRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">middle</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ForwardRange</span><span class="special">&gt;</span>
<span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rotate</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">middle</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.description"></a><h6>
<a name="id3063123"></a>
<a class="link" href="rotate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.description">Description</a>
<a name="range.reference.algorithms.mutating.rotate.description"></a><h6>
<a name="id702217"></a>
<a class="link" href="rotate.html#range.reference.algorithms.mutating.rotate.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">rotate</span></code> rotates the elements
in a range. It exchanges the two ranges <code class="computeroutput"><span class="special">[</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">middle</span><span class="special">)</span></code>
and <code class="computeroutput"><span class="special">[</span><span class="identifier">middle</span><span class="special">,</span> <span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code>. Returns a reference to <code class="computeroutput"><span class="identifier">rng</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.definition"></a><h6>
<a name="id3063250"></a>
<a class="link" href="rotate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.definition">Definition</a>
<a name="range.reference.algorithms.mutating.rotate.definition"></a><h6>
<a name="id702338"></a>
<a class="link" href="rotate.html#range.reference.algorithms.mutating.rotate.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">rotate</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.requirements"></a><h6>
<a name="id3063325"></a>
<a class="link" href="rotate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.requirements">Requirements</a>
<a name="range.reference.algorithms.mutating.rotate.requirements"></a><h6>
<a name="id702407"></a>
<a class="link" href="rotate.html#range.reference.algorithms.mutating.rotate.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a model
of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward Range</a>
Concept.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a
model of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.precondition_"></a><h6>
<a name="id3063389"></a>
<a class="link" href="rotate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.precondition_">Precondition:</a>
<a name="range.reference.algorithms.mutating.rotate.precondition_"></a><h6>
<a name="id702473"></a>
<a class="link" href="rotate.html#range.reference.algorithms.mutating.rotate.precondition_">Precondition:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="special">[</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">middle</span><span class="special">)</span></code> is a valid range.
</li>
<code class="computeroutput"><span class="special">[</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">middle</span><span class="special">)</span></code> is a valid range.
</li>
<li class="listitem">
<code class="computeroutput"><span class="special">[</span><span class="identifier">middle</span><span class="special">,</span> <span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code> is a valid range.
</li>
<code class="computeroutput"><span class="special">[</span><span class="identifier">middle</span><span class="special">,</span> <span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code> is a valid range.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.complexity"></a><h6>
<a name="id3063500"></a>
<a class="link" href="rotate.html#range.reference.algorithms.range_algorithm_mutating_algorithms.rotate.complexity">Complexity</a>
<a name="range.reference.algorithms.mutating.rotate.complexity"></a><h6>
<a name="id702586"></a>
<a class="link" href="rotate.html#range.reference.algorithms.mutating.rotate.complexity">Complexity</a>
</h6>
<p>
Linear. At most <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code> swaps are performed.
@ -104,7 +103,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="replace_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="sort.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="reverse_copy.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="rotate_copy.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,111 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>rotate_copy</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="rotate.html" title="rotate">
<link rel="next" href="sort.html" title="sort">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="rotate.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="sort.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.mutating.rotate_copy"></a><a class="link" href="rotate_copy.html" title="rotate_copy">rotate_copy</a>
</h5></div></div></div>
<a name="range.reference.algorithms.mutating.rotate_copy.prototype"></a><h6>
<a name="id702649"></a>
<a class="link" href="rotate_copy.html#range.reference.algorithms.mutating.rotate_copy.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">ForwardRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">&gt;</span>
<span class="identifier">OutputIterator</span> <span class="identifier">rotate_copy</span><span class="special">(</span>
<span class="keyword">const</span> <span class="identifier">ForwardRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="identifier">range_iterator</span><span class="special">&lt;</span><span class="identifier">ForwardRange</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">middle</span><span class="special">,</span>
<span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.mutating.rotate_copy.description"></a><h6>
<a name="id702817"></a>
<a class="link" href="rotate_copy.html#range.reference.algorithms.mutating.rotate_copy.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">rotate_copy</span></code> rotates the
elements in a range. It copies the two ranges <code class="computeroutput"><span class="special">[</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">middle</span><span class="special">)</span></code>
and <code class="computeroutput"><span class="special">[</span><span class="identifier">middle</span><span class="special">,</span> <span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code> to <code class="computeroutput"><span class="identifier">out</span></code>.
</p>
<a name="range.reference.algorithms.mutating.rotate_copy.definition"></a><h6>
<a name="id702938"></a>
<a class="link" href="rotate_copy.html#range.reference.algorithms.mutating.rotate_copy.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">rotate_copy</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.mutating.rotate_copy.requirements"></a><h6>
<a name="id703007"></a>
<a class="link" href="rotate_copy.html#range.reference.algorithms.mutating.rotate_copy.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a
model of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">OutputIterator</span></code> is
a model of the <code class="computeroutput"><span class="identifier">OutputIteratorConcept</span></code>.
</li>
</ul></div>
<a name="range.reference.algorithms.mutating.rotate_copy.precondition_"></a><h6>
<a name="id703100"></a>
<a class="link" href="rotate_copy.html#range.reference.algorithms.mutating.rotate_copy.precondition_">Precondition:</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="special">[</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng</span><span class="special">),</span> <span class="identifier">middle</span><span class="special">)</span></code> is a valid range.
</li>
<li class="listitem">
<code class="computeroutput"><span class="special">[</span><span class="identifier">middle</span><span class="special">,</span> <span class="identifier">end</span><span class="special">(</span><span class="identifier">rng</span><span class="special">))</span></code> is a valid range.
</li>
</ul></div>
<a name="range.reference.algorithms.mutating.rotate_copy.complexity"></a><h6>
<a name="id703212"></a>
<a class="link" href="rotate_copy.html#range.reference.algorithms.mutating.rotate_copy.complexity">Complexity</a>
</h6>
<p>
Linear. Exactly <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code> elements are copied.
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="rotate.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="sort.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,35 +1,34 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - sort</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<title>sort</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="rotate.html" title="Range Algorithm - rotate">
<link rel="next" href="stable_partition.html" title="Range Algorithm - stable_partition">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="rotate_copy.html" title="rotate_copy">
<link rel="next" href="stable_partition.html" title="stable_partition">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="rotate.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="stable_partition.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="rotate_copy.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="stable_partition.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - sort">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.sort"></a><a class="link" href="sort.html" title="Range Algorithm - sort">
Range Algorithm - sort</a>
<a name="range.reference.algorithms.mutating.sort"></a><a class="link" href="sort.html" title="sort">sort</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.sort.prototype"></a><h6>
<a name="id3063573"></a>
<a class="link" href="sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.sort.prototype">Prototype</a>
<a name="range.reference.algorithms.mutating.sort.prototype"></a><h6>
<a name="id703276"></a>
<a class="link" href="sort.html#range.reference.algorithms.mutating.sort.prototype">Prototype</a>
</h6>
<p>
@ -48,9 +47,9 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.sort.description"></a><h6>
<a name="id3063955"></a>
<a class="link" href="sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.sort.description">Description</a>
<a name="range.reference.algorithms.mutating.sort.description"></a><h6>
<a name="id703652"></a>
<a class="link" href="sort.html#range.reference.algorithms.mutating.sort.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">sort</span></code> sorts the elements
@ -71,67 +70,67 @@
function with a predicate, ascending order is defined by <code class="computeroutput"><span class="identifier">pred</span></code> such that for all adjacent elements
<code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">]</span></code>, <code class="computeroutput"><span class="identifier">pred</span><span class="special">(</span><span class="identifier">y</span><span class="special">,</span> <span class="identifier">x</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">false</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.sort.definition"></a><h6>
<a name="id3064210"></a>
<a class="link" href="sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.sort.definition">Definition</a>
<a name="range.reference.algorithms.mutating.sort.definition"></a><h6>
<a name="id703896"></a>
<a class="link" href="sort.html#range.reference.algorithms.mutating.sort.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">sort</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.sort.requirements"></a><h6>
<a name="id3064284"></a>
<a class="link" href="sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.sort.requirements">Requirements</a>
<a name="range.reference.algorithms.mutating.sort.requirements"></a><h6>
<a name="id703965"></a>
<a class="link" href="sort.html#range.reference.algorithms.mutating.sort.requirements">Requirements</a>
</h6>
<p>
<span class="bold"><strong>For versions of sort without a predicate:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
mutable.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a model of the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a model of the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>.
</li>
<li class="listitem">
The ordering relation on <code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a <span class="bold"><strong>strict weak ordering</strong></span>,
as defined in the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
requirements.
</li>
The ordering relation on <code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a <span class="bold"><strong>strict weak ordering</strong></span>,
as defined in the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
requirements.
</li>
</ul></div>
<p>
<span class="bold"><strong>For versions of sort with a predicate</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
mutable.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">BinaryPredicate</span></code> is
a model of the <code class="computeroutput"><span class="identifier">StrictWeakOrderingConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">BinaryPredicate</span></code> is
a model of the <code class="computeroutput"><span class="identifier">StrictWeakOrderingConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is convertible to both of <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code>'s
argument types.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is convertible to both of <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code>'s
argument types.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.sort.complexity"></a><h6>
<a name="id3064520"></a>
<a class="link" href="sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.sort.complexity">Complexity</a>
<a name="range.reference.algorithms.mutating.sort.complexity"></a><h6>
<a name="id704212"></a>
<a class="link" href="sort.html#range.reference.algorithms.mutating.sort.complexity">Complexity</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">O</span><span class="special">(</span><span class="identifier">N</span> <span class="identifier">log</span><span class="special">(</span><span class="identifier">N</span><span class="special">))</span></code> comparisons (both average and worst-case),
@ -148,7 +147,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="rotate.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="stable_partition.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="rotate_copy.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="stable_partition.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,35 +1,34 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - stable_partition</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<title>stable_partition</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="sort.html" title="Range Algorithm - sort">
<link rel="next" href="stable_sort.html" title="Range Algorithm - stable_sort">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="sort.html" title="sort">
<link rel="next" href="stable_sort.html" title="stable_sort">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="sort.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="stable_sort.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="sort.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="stable_sort.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - stable_partition">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition"></a><a class="link" href="stable_partition.html" title="Range Algorithm - stable_partition">
Range Algorithm - stable_partition</a>
<a name="range.reference.algorithms.mutating.stable_partition"></a><a class="link" href="stable_partition.html" title="stable_partition">stable_partition</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition.prototype"></a><h6>
<a name="id3064641"></a>
<a class="link" href="stable_partition.html#range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition.prototype">Prototype</a>
<a name="range.reference.algorithms.mutating.stable_partition.prototype"></a><h6>
<a name="id704324"></a>
<a class="link" href="stable_partition.html#range.reference.algorithms.mutating.stable_partition.prototype">Prototype</a>
</h6>
<p>
@ -60,9 +59,9 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition.description"></a><h6>
<a name="id3065223"></a>
<a class="link" href="stable_partition.html#range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition.description">Description</a>
<a name="range.reference.algorithms.mutating.stable_partition.description"></a><h6>
<a name="id704898"></a>
<a class="link" href="stable_partition.html#range.reference.algorithms.mutating.stable_partition.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">stable_partition</span></code> reorders
@ -82,34 +81,34 @@
the <code class="computeroutput"><span class="identifier">found</span></code> iterator is
the iterator to the first element that fails to satisfy <code class="computeroutput"><span class="identifier">pred</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition.definition"></a><h6>
<a name="id3065376"></a>
<a class="link" href="stable_partition.html#range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition.definition">Definition</a>
<a name="range.reference.algorithms.mutating.stable_partition.definition"></a><h6>
<a name="id705039"></a>
<a class="link" href="stable_partition.html#range.reference.algorithms.mutating.stable_partition.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">stable_partition</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition.requirements"></a><h6>
<a name="id3065451"></a>
<a class="link" href="stable_partition.html#range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition.requirements">Requirements</a>
<a name="range.reference.algorithms.mutating.stable_partition.requirements"></a><h6>
<a name="id705110"></a>
<a class="link" href="stable_partition.html#range.reference.algorithms.mutating.stable_partition.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a model
of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward Range</a>
Concept.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a
model of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">UnaryPredicate</span></code> is a
model of the <code class="computeroutput"><span class="identifier">PredicateConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">UnaryPredicate</span></code> is
a model of the <code class="computeroutput"><span class="identifier">PredicateConcept</span></code>.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition.complexity"></a><h6>
<a name="id3065542"></a>
<a class="link" href="stable_partition.html#range.reference.algorithms.range_algorithm_mutating_algorithms.stable_partition.complexity">Complexity</a>
<a name="range.reference.algorithms.mutating.stable_partition.complexity"></a><h6>
<a name="id705203"></a>
<a class="link" href="stable_partition.html#range.reference.algorithms.mutating.stable_partition.complexity">Complexity</a>
</h6>
<p>
Best case: <code class="computeroutput"><span class="identifier">O</span><span class="special">(</span><span class="identifier">N</span><span class="special">)</span></code>
@ -129,7 +128,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="sort.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="stable_sort.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="sort.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="stable_sort.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,35 +1,34 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - stable_sort</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<title>stable_sort</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="stable_partition.html" title="Range Algorithm - stable_partition">
<link rel="next" href="transform.html" title="Range Algorithm - transform">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="stable_partition.html" title="stable_partition">
<link rel="next" href="swap_ranges.html" title="swap_ranges">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="stable_partition.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="transform.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="stable_partition.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="swap_ranges.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - stable_sort">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort"></a><a class="link" href="stable_sort.html" title="Range Algorithm - stable_sort">
Range Algorithm - stable_sort</a>
<a name="range.reference.algorithms.mutating.stable_sort"></a><a class="link" href="stable_sort.html" title="stable_sort">stable_sort</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort.prototype"></a><h6>
<a name="id3065717"></a>
<a class="link" href="stable_sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort.prototype">Prototype</a>
<a name="range.reference.algorithms.mutating.stable_sort.prototype"></a><h6>
<a name="id705369"></a>
<a class="link" href="stable_sort.html#range.reference.algorithms.mutating.stable_sort.prototype">Prototype</a>
</h6>
<p>
@ -48,9 +47,9 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort.description"></a><h6>
<a name="id3066100"></a>
<a class="link" href="stable_sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort.description">Description</a>
<a name="range.reference.algorithms.mutating.stable_sort.description"></a><h6>
<a name="id705745"></a>
<a class="link" href="stable_sort.html#range.reference.algorithms.mutating.stable_sort.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">stable_sort</span></code> sorts the
@ -71,67 +70,67 @@
function with a predicate, ascending order is designed by <code class="computeroutput"><span class="identifier">pred</span></code> such that for all adjacent elements
<code class="computeroutput"><span class="special">[</span><span class="identifier">x</span><span class="special">,</span><span class="identifier">y</span><span class="special">]</span></code>, <code class="computeroutput"><span class="identifier">pred</span><span class="special">(</span><span class="identifier">y</span><span class="special">,</span><span class="identifier">x</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">false</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort.definition"></a><h6>
<a name="id3066355"></a>
<a class="link" href="stable_sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort.definition">Definition</a>
<a name="range.reference.algorithms.mutating.stable_sort.definition"></a><h6>
<a name="id705989"></a>
<a class="link" href="stable_sort.html#range.reference.algorithms.mutating.stable_sort.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">stable_sort</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort.requirements"></a><h6>
<a name="id3066430"></a>
<a class="link" href="stable_sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort.requirements">Requirements</a>
<a name="range.reference.algorithms.mutating.stable_sort.requirements"></a><h6>
<a name="id706060"></a>
<a class="link" href="stable_sort.html#range.reference.algorithms.mutating.stable_sort.requirements">Requirements</a>
</h6>
<p>
<span class="bold"><strong>For versions of stable_sort without a predicate</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
mutable.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a model of the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a model of the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>.
</li>
<li class="listitem">
The ordering relation on <code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a <span class="bold"><strong>strict weak ordering</strong></span>,
as defined in the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
requirements.
</li>
The ordering relation on <code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is a <span class="bold"><strong>strict weak ordering</strong></span>,
as defined in the <code class="computeroutput"><span class="identifier">LessThanComparableConcept</span></code>
requirements.
</li>
</ul></div>
<p>
<span class="bold"><strong>For versions of stable_sort with a predicate:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is a model of the <a class="link" href="../../../concepts/random_access_range.html" title="Random Access Range">Random
Access Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code> is
mutable.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>
is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">BinaryPredicate</span></code> is
a model of the <code class="computeroutput"><span class="identifier">StrictWeakOrderingConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">BinaryPredicate</span></code> is
a model of the <code class="computeroutput"><span class="identifier">StrictWeakOrderingConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is convertible to both of <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code>'s
argument types.
</li>
<code class="computeroutput"><span class="identifier">RandomAccessRange</span></code>'s
value type is convertible to both of <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code>'s
argument types.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort.complexity"></a><h6>
<a name="id3066667"></a>
<a class="link" href="stable_sort.html#range.reference.algorithms.range_algorithm_mutating_algorithms.stable_sort.complexity">Complexity</a>
<a name="range.reference.algorithms.mutating.stable_sort.complexity"></a><h6>
<a name="id706307"></a>
<a class="link" href="stable_sort.html#range.reference.algorithms.mutating.stable_sort.complexity">Complexity</a>
</h6>
<p>
Best case: <code class="computeroutput"><span class="identifier">O</span><span class="special">(</span><span class="identifier">N</span><span class="special">)</span></code>
@ -151,7 +150,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="stable_partition.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="transform.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="stable_partition.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="swap_ranges.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,103 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>swap_ranges</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="stable_sort.html" title="stable_sort">
<link rel="next" href="transform.html" title="transform">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="stable_sort.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="transform.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.mutating.swap_ranges"></a><a class="link" href="swap_ranges.html" title="swap_ranges">swap_ranges</a>
</h5></div></div></div>
<a name="range.reference.algorithms.mutating.swap_ranges.prototype"></a><h6>
<a name="id706485"></a>
<a class="link" href="swap_ranges.html#range.reference.algorithms.mutating.swap_ranges.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">SinglePassRange1</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SinglePassRange2</span><span class="special">&gt;</span>
<span class="identifier">SinglePassRange2</span><span class="special">&amp;</span> <span class="identifier">swap_ranges</span><span class="special">(</span><span class="identifier">SinglePassRange1</span><span class="special">&amp;</span> <span class="identifier">rng1</span><span class="special">,</span> <span class="identifier">SinglePassRange</span><span class="special">&amp;</span> <span class="identifier">rng2</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.mutating.swap_ranges.description"></a><h6>
<a name="id706616"></a>
<a class="link" href="swap_ranges.html#range.reference.algorithms.mutating.swap_ranges.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">swap_ranges</span></code> swaps each
element <code class="computeroutput"><span class="identifier">x</span></code> in <code class="computeroutput"><span class="identifier">rng1</span></code> with the corresponding element
<code class="computeroutput"><span class="identifier">y</span></code> in <code class="computeroutput"><span class="identifier">rng2</span></code>.
Returns a reference to <code class="computeroutput"><span class="identifier">rng2</span></code>.
</p>
<a name="range.reference.algorithms.mutating.swap_ranges.definition"></a><h6>
<a name="id706703"></a>
<a class="link" href="swap_ranges.html#range.reference.algorithms.mutating.swap_ranges.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">swap_ranges</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.mutating.swap_ranges.requirements"></a><h6>
<a name="id706773"></a>
<a class="link" href="swap_ranges.html#range.reference.algorithms.mutating.swap_ranges.requirements">Requirements</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange1</span></code>
is a model of the <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange1</span></code>
is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange2</span></code>
is a model of the <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange2</span></code>
is mutable.
</li>
</ul></div>
<a name="range.reference.algorithms.mutating.swap_ranges.complexity"></a><h6>
<a name="id706880"></a>
<a class="link" href="swap_ranges.html#range.reference.algorithms.mutating.swap_ranges.complexity">Complexity</a>
</h6>
<p>
Linear. Exactly <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">)</span></code> elements are swapped.
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="stable_sort.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="transform.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,35 +1,34 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - transform</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<title>transform</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="stable_sort.html" title="Range Algorithm - stable_sort">
<link rel="next" href="unique.html" title="Range Algorithm - unique">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="swap_ranges.html" title="swap_ranges">
<link rel="next" href="unique.html" title="unique">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="stable_sort.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="unique.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="swap_ranges.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="unique.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - transform">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.transform"></a><a class="link" href="transform.html" title="Range Algorithm - transform">
Range Algorithm - transform</a>
<a name="range.reference.algorithms.mutating.transform"></a><a class="link" href="transform.html" title="transform">transform</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.transform.prototype"></a><h6>
<a name="id3066856"></a>
<a class="link" href="transform.html#range.reference.algorithms.range_algorithm_mutating_algorithms.transform.prototype">Prototype</a>
<a name="range.reference.algorithms.mutating.transform.prototype"></a><h6>
<a name="id706944"></a>
<a class="link" href="transform.html#range.reference.algorithms.mutating.transform.prototype">Prototype</a>
</h6>
<p>
@ -42,7 +41,7 @@
<span class="identifier">OutputIterator</span> <span class="identifier">transform</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">SinglePassRange1</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span>
<span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">,</span>
<span class="identifier">UnaryOperation</span> <span class="identifier">fun</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span>
<span class="keyword">class</span> <span class="identifier">SinglePassRange1</span><span class="special">,</span>
<span class="keyword">class</span> <span class="identifier">SinglePassRange2</span><span class="special">,</span>
@ -56,9 +55,9 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.transform.description"></a><h6>
<a name="id3067196"></a>
<a class="link" href="transform.html#range.reference.algorithms.range_algorithm_mutating_algorithms.transform.description">Description</a>
<a name="range.reference.algorithms.mutating.transform.description"></a><h6>
<a name="id707279"></a>
<a class="link" href="transform.html#range.reference.algorithms.mutating.transform.description">Description</a>
</h6>
<p>
<span class="bold"><strong>UnaryOperation version:</strong></span>
@ -92,118 +91,120 @@
<p>
The return value is <code class="computeroutput"><span class="identifier">out</span> <span class="special">+</span> <span class="identifier">min</span><span class="special">(</span><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">),</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng2</span><span class="special">))</span></code>.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.transform.definition"></a><h6>
<a name="id3067749"></a>
<a class="link" href="transform.html#range.reference.algorithms.range_algorithm_mutating_algorithms.transform.definition">Definition</a>
<a name="range.reference.algorithms.mutating.transform.definition"></a><h6>
<a name="id707818"></a>
<a class="link" href="transform.html#range.reference.algorithms.mutating.transform.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transform</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.transform.requirements"></a><h6>
<a name="id3067824"></a>
<a class="link" href="transform.html#range.reference.algorithms.range_algorithm_mutating_algorithms.transform.requirements">Requirements</a>
<a name="range.reference.algorithms.mutating.transform.requirements"></a><h6>
<a name="id707889"></a>
<a class="link" href="transform.html#range.reference.algorithms.mutating.transform.requirements">Requirements</a>
</h6>
<p>
<span class="bold"><strong>For the unary versions of transform:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange1</span></code> is
a model of the <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">SinglePassRange1</span></code>
is a model of the <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">OutputIterator</span></code> is a
model of the <code class="computeroutput"><span class="identifier">OutputIteratorConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">OutputIterator</span></code> is
a model of the <code class="computeroutput"><span class="identifier">OutputIteratorConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">UnaryOperation</span></code> is a
model of the <code class="computeroutput"><span class="identifier">UnaryFunctionConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">UnaryOperation</span></code> is
a model of the <code class="computeroutput"><span class="identifier">UnaryFunctionConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange1</span></code>'s
value type must be convertible to <code class="computeroutput"><span class="identifier">UnaryFunction</span></code>'s
argument type.
</li>
<code class="computeroutput"><span class="identifier">SinglePassRange1</span></code>'s
value type must be convertible to <code class="computeroutput"><span class="identifier">UnaryFunction</span></code>'s
argument type.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">UnaryFunction</span></code>'s result
type must be convertible to a type in <code class="computeroutput"><span class="identifier">OutputIterator</span></code>'s
set of value types.
</li>
<code class="computeroutput"><span class="identifier">UnaryFunction</span></code>'s result
type must be convertible to a type in <code class="computeroutput"><span class="identifier">OutputIterator</span></code>'s
set of value types.
</li>
</ul></div>
<p>
<span class="bold"><strong>For the binary versions of transform:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange1</span></code> is
a model of the <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">SinglePassRange1</span></code>
is a model of the <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange2</span></code> is
a model of the <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a> Concept.
</li>
<code class="computeroutput"><span class="identifier">SinglePassRange2</span></code>
is a model of the <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">OutputIterator</span></code> is a
model of the <code class="computeroutput"><span class="identifier">OutputIteratorConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">OutputIterator</span></code> is
a model of the <code class="computeroutput"><span class="identifier">OutputIteratorConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">BinaryOperation</span></code> is
a model of the <code class="computeroutput"><span class="identifier">BinaryFunctionConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">BinaryOperation</span></code> is
a model of the <code class="computeroutput"><span class="identifier">BinaryFunctionConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange1</span></code>'s
value type must be convertible to <code class="computeroutput"><span class="identifier">BinaryFunction</span></code>'s
first argument type.
</li>
<code class="computeroutput"><span class="identifier">SinglePassRange1</span></code>'s
value type must be convertible to <code class="computeroutput"><span class="identifier">BinaryFunction</span></code>'s
first argument type.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange2</span></code>'s
value type must be convertible to <code class="computeroutput"><span class="identifier">BinaryFunction</span></code>'s
second argument type.
</li>
<code class="computeroutput"><span class="identifier">SinglePassRange2</span></code>'s
value type must be convertible to <code class="computeroutput"><span class="identifier">BinaryFunction</span></code>'s
second argument type.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">BinaryOperation</span></code>'s result
type must be convertible to a type in <code class="computeroutput"><span class="identifier">OutputIterator</span></code>'s
set of value types.
</li>
<code class="computeroutput"><span class="identifier">BinaryOperation</span></code>'s
result type must be convertible to a type in <code class="computeroutput"><span class="identifier">OutputIterator</span></code>'s
set of value types.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.transform.precondition_"></a><h6>
<a name="id3068178"></a>
<a class="link" href="transform.html#range.reference.algorithms.range_algorithm_mutating_algorithms.transform.precondition_">Precondition:</a>
<a name="range.reference.algorithms.mutating.transform.precondition_"></a><h6>
<a name="id708258"></a>
<a class="link" href="transform.html#range.reference.algorithms.mutating.transform.precondition_">Precondition:</a>
</h6>
<p>
<span class="bold"><strong>For the unary version of transform:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">out</span></code> is not an iterator
within the range <code class="computeroutput"><span class="special">[</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">)</span> <span class="special">+</span> <span class="number">1</span><span class="special">,</span> <span class="identifier">end</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">))</span></code>.
</li>
<code class="computeroutput"><span class="identifier">out</span></code> is not an iterator
within the range <code class="computeroutput"><span class="special">[</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">)</span> <span class="special">+</span> <span class="number">1</span><span class="special">,</span> <span class="identifier">end</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">))</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="special">[</span><span class="identifier">out</span><span class="special">,</span> <span class="identifier">out</span> <span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">))</span></code> is a valid range.
</li>
<code class="computeroutput"><span class="special">[</span><span class="identifier">out</span><span class="special">,</span> <span class="identifier">out</span>
<span class="special">+</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">))</span></code> is a valid range.
</li>
</ul></div>
<p>
<span class="bold"><strong>For the binary version of transform:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">out</span></code> is not an iterator
within the range <code class="computeroutput"><span class="special">[</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">)</span> <span class="special">+</span> <span class="number">1</span><span class="special">,</span> <span class="identifier">end</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">))</span></code>.
</li>
<code class="computeroutput"><span class="identifier">out</span></code> is not an iterator
within the range <code class="computeroutput"><span class="special">[</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">)</span> <span class="special">+</span> <span class="number">1</span><span class="special">,</span> <span class="identifier">end</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">))</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">out</span></code> is not an iterator
within the range <code class="computeroutput"><span class="special">[</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng2</span><span class="special">)</span> <span class="special">+</span> <span class="number">1</span><span class="special">,</span> <span class="identifier">end</span><span class="special">(</span><span class="identifier">rng2</span><span class="special">))</span></code>.
</li>
<code class="computeroutput"><span class="identifier">out</span></code> is not an iterator
within the range <code class="computeroutput"><span class="special">[</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">rng2</span><span class="special">)</span> <span class="special">+</span> <span class="number">1</span><span class="special">,</span> <span class="identifier">end</span><span class="special">(</span><span class="identifier">rng2</span><span class="special">))</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="special">[</span><span class="identifier">out</span><span class="special">,</span> <span class="identifier">out</span> <span class="special">+</span> <span class="identifier">min</span><span class="special">(</span><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">),</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng2</span><span class="special">)))</span></code> is a valid range.
</li>
<code class="computeroutput"><span class="special">[</span><span class="identifier">out</span><span class="special">,</span> <span class="identifier">out</span>
<span class="special">+</span> <span class="identifier">min</span><span class="special">(</span><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">),</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng2</span><span class="special">)))</span></code> is a valid range.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.transform.complexity"></a><h6>
<a name="id3068595"></a>
<a class="link" href="transform.html#range.reference.algorithms.range_algorithm_mutating_algorithms.transform.complexity">Complexity</a>
<a name="range.reference.algorithms.mutating.transform.complexity"></a><h6>
<a name="id708682"></a>
<a class="link" href="transform.html#range.reference.algorithms.mutating.transform.complexity">Complexity</a>
</h6>
<p>
Linear. The operation is applied exactly <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">)</span></code> for the unary version and <code class="computeroutput"><span class="identifier">min</span><span class="special">(</span><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng1</span><span class="special">),</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng2</span><span class="special">))</span></code>
@ -220,7 +221,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="stable_sort.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="unique.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="swap_ranges.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="unique.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -1,35 +1,34 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Range Algorithm - unique</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<title>unique</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../range_algorithm_mutating_algorithms.html" title="Mutating algorithms">
<link rel="prev" href="transform.html" title="Range Algorithm - transform">
<link rel="next" href="../range_algorithm_non_mutating_algorithms.html" title="Non-mutating algorithms">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="transform.html" title="transform">
<link rel="next" href="unique_copy.html" title="unique_copy">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="transform.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../range_algorithm_non_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="transform.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="unique_copy.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Range Algorithm - unique">
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.unique"></a><a class="link" href="unique.html" title="Range Algorithm - unique">
Range Algorithm - unique</a>
<a name="range.reference.algorithms.mutating.unique"></a><a class="link" href="unique.html" title="unique">unique</a>
</h5></div></div></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.unique.prototype"></a><h6>
<a name="id3068722"></a>
<a class="link" href="unique.html#range.reference.algorithms.range_algorithm_mutating_algorithms.unique.prototype">Prototype</a>
<a name="range.reference.algorithms.mutating.unique.prototype"></a><h6>
<a name="id708800"></a>
<a class="link" href="unique.html#range.reference.algorithms.mutating.unique.prototype">Prototype</a>
</h6>
<p>
@ -68,9 +67,9 @@
</pre>
<p>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.unique.description"></a><h6>
<a name="id3069755"></a>
<a class="link" href="unique.html#range.reference.algorithms.range_algorithm_mutating_algorithms.unique.description">Description</a>
<a name="range.reference.algorithms.mutating.unique.description"></a><h6>
<a name="id709822"></a>
<a class="link" href="unique.html#range.reference.algorithms.mutating.unique.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">unique</span></code> removes all but
@ -86,60 +85,60 @@
for <code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s value
type.
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.unique.definition"></a><h6>
<a name="id3069879"></a>
<a class="link" href="unique.html#range.reference.algorithms.range_algorithm_mutating_algorithms.unique.definition">Definition</a>
<a name="range.reference.algorithms.mutating.unique.definition"></a><h6>
<a name="id709940"></a>
<a class="link" href="unique.html#range.reference.algorithms.mutating.unique.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">unique</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.unique.requirements"></a><h6>
<a name="id3069954"></a>
<a class="link" href="unique.html#range.reference.algorithms.range_algorithm_mutating_algorithms.unique.requirements">Requirements</a>
<a name="range.reference.algorithms.mutating.unique.requirements"></a><h6>
<a name="id710010"></a>
<a class="link" href="unique.html#range.reference.algorithms.mutating.unique.requirements">Requirements</a>
</h6>
<p>
<span class="bold"><strong>For the non-predicate versions of unique:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a model
of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward Range</a>
Concept.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a
model of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s value
type is a model of the <code class="computeroutput"><span class="identifier">EqualityComparableConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s value
type is a model of the <code class="computeroutput"><span class="identifier">EqualityComparableConcept</span></code>.
</li>
</ul></div>
<p>
<span class="bold"><strong>For the predicate versions of unique:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a model
of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward Range</a>
Concept.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is a
model of the <a class="link" href="../../../concepts/forward_range.html" title="Forward Range">Forward
Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code> is mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">BinaryPredicate</span></code> is
a model of the <code class="computeroutput"><span class="identifier">BinaryPredicateConcept</span></code>.
</li>
<code class="computeroutput"><span class="identifier">BinaryPredicate</span></code> is
a model of the <code class="computeroutput"><span class="identifier">BinaryPredicateConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s value
type is convertible to <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code>'s
first argument type and to <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code>'s
second argument type.
</li>
<code class="computeroutput"><span class="identifier">ForwardRange</span></code>'s value
type is convertible to <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code>'s
first argument type and to <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code>'s
second argument type.
</li>
</ul></div>
<a name="range.reference.algorithms.range_algorithm_mutating_algorithms.unique.complexity"></a><h6>
<a name="id3070168"></a>
<a class="link" href="unique.html#range.reference.algorithms.range_algorithm_mutating_algorithms.unique.complexity">Complexity</a>
<a name="range.reference.algorithms.mutating.unique.complexity"></a><h6>
<a name="id710232"></a>
<a class="link" href="unique.html#range.reference.algorithms.mutating.unique.complexity">Complexity</a>
</h6>
<p>
Linear. <code class="computeroutput"><span class="identifier">O</span><span class="special">(</span><span class="identifier">N</span><span class="special">)</span></code>
@ -158,7 +157,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="transform.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../range_algorithm_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../range_algorithm_non_mutating_algorithms.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
<a accesskey="p" href="transform.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="unique_copy.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,142 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>unique_copy</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../mutating.html" title="Mutating algorithms">
<link rel="prev" href="unique.html" title="unique">
<link rel="next" href="../non_mutating.html" title="Non-mutating algorithms">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="unique.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../non_mutating.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="range.reference.algorithms.mutating.unique_copy"></a><a class="link" href="unique_copy.html" title="unique_copy">unique_copy</a>
</h5></div></div></div>
<a name="range.reference.algorithms.mutating.unique_copy.prototype"></a><h6>
<a name="id710354"></a>
<a class="link" href="unique_copy.html#range.reference.algorithms.mutating.unique_copy.prototype">Prototype</a>
</h6>
<p>
</p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">SinglePassRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">&gt;</span>
<span class="identifier">OutputIterator</span> <span class="identifier">unique_copy</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">);</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">SinglePassRange</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">OutputIterator</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">BinaryPredicate</span><span class="special">&gt;</span>
<span class="identifier">OutputIterator</span> <span class="identifier">unique_copy</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">SinglePassRange</span><span class="special">&amp;</span> <span class="identifier">rng</span><span class="special">,</span> <span class="identifier">OutputIterator</span> <span class="identifier">out</span><span class="special">,</span> <span class="identifier">BinaryPredicate</span> <span class="identifier">pred</span><span class="special">);</span>
</pre>
<p>
</p>
<a name="range.reference.algorithms.mutating.unique_copy.description"></a><h6>
<a name="id710611"></a>
<a class="link" href="unique_copy.html#range.reference.algorithms.mutating.unique_copy.description">Description</a>
</h6>
<p>
<code class="computeroutput"><span class="identifier">unique_copy</span></code> copies the
first element of each sequence of duplicates encountered in <code class="computeroutput"><span class="identifier">rng</span></code> to <code class="computeroutput"><span class="identifier">out</span></code>.
</p>
<p>
Equality is determined by the predicate if one is supplied, or by <code class="computeroutput"><span class="keyword">operator</span><span class="special">==()</span></code>
for <code class="computeroutput"><span class="identifier">SinglePassRange</span></code>'s
value type.
</p>
<a name="range.reference.algorithms.mutating.unique_copy.definition"></a><h6>
<a name="id710696"></a>
<a class="link" href="unique_copy.html#range.reference.algorithms.mutating.unique_copy.definition">Definition</a>
</h6>
<p>
Defined in the header file <code class="computeroutput"><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">unique_copy</span><span class="special">.</span><span class="identifier">hpp</span></code>
</p>
<a name="range.reference.algorithms.mutating.unique_copy.requirements"></a><h6>
<a name="id710767"></a>
<a class="link" href="unique_copy.html#range.reference.algorithms.mutating.unique_copy.requirements">Requirements</a>
</h6>
<p>
<span class="bold"><strong>For the non-predicate versions of unique:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange</span></code> is
a model of the <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange</span></code> is
mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange</span></code>'s
value type is a model of the <code class="computeroutput"><span class="identifier">EqualityComparableConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">OutputIterator</span></code> is
a model of the <code class="computeroutput"><span class="identifier">OutputIteratorConcept</span></code>.
</li>
</ul></div>
<p>
<span class="bold"><strong>For the predicate versions of unique:</strong></span>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange</span></code> is
a model of the <a class="link" href="../../../concepts/single_pass_range.html" title="Single Pass Range">Single
Pass Range</a> Concept.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange</span></code> is
mutable.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">BinaryPredicate</span></code> is
a model of the <code class="computeroutput"><span class="identifier">BinaryPredicateConcept</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">SinglePassRange</span></code>'s
value type is convertible to <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code>'s
first argument type and to <code class="computeroutput"><span class="identifier">BinaryPredicate</span></code>'s
second argument type.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">OutputIterator</span></code> is
a model of the <code class="computeroutput"><span class="identifier">OutputIteratorConcept</span></code>.
</li>
</ul></div>
<a name="range.reference.algorithms.mutating.unique_copy.complexity"></a><h6>
<a name="id711046"></a>
<a class="link" href="unique_copy.html#range.reference.algorithms.mutating.unique_copy.complexity">Complexity</a>
</h6>
<p>
Linear. <code class="computeroutput"><span class="identifier">O</span><span class="special">(</span><span class="identifier">N</span><span class="special">)</span></code>
where <code class="computeroutput"><span class="identifier">N</span></code> is <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code>.
Exactly <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">rng</span><span class="special">)</span></code>
comparisons are performed.
</p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="unique.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../mutating.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../non_mutating.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -0,0 +1,56 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>New algorithms</title>
<link rel="stylesheet" href="../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Range 2.0">
<link rel="up" href="../algorithms.html" title="Range Algorithms">
<link rel="prev" href="permutation/prev_permutation.html" title="prev_permutation">
<link rel="next" href="new/copy_n.html" title="copy_n">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="permutation/prev_permutation.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithms.html"><img src="../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="new/copy_n.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="range.reference.algorithms.new"></a><a class="link" href="new.html" title="New algorithms">New algorithms</a>
</h4></div></div></div>
<div class="toc"><dl>
<dt><span class="section"><a href="new/copy_n.html">copy_n</a></span></dt>
<dt><span class="section"><a href="new/erase.html">erase</a></span></dt>
<dt><span class="section"><a href="new/for_each.html">for_each</a></span></dt>
<dt><span class="section"><a href="new/insert.html">insert</a></span></dt>
<dt><span class="section"><a href="new/iota.html">iota</a></span></dt>
<dt><span class="section"><a href="new/is_sorted.html">is_sorted</a></span></dt>
<dt><span class="section"><a href="new/overwrite.html">overwrite</a></span></dt>
<dt><span class="section"><a href="new/push_back.html">push_back</a></span></dt>
<dt><span class="section"><a href="new/push_front.html">push_front</a></span></dt>
<dt><span class="section"><a href="new/remove_erase.html">remove_erase</a></span></dt>
<dt><span class="section"><a href="new/remove_erase_if.html">remove_erase_if</a></span></dt>
</dl></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 -2010 Thorsten Ottosen, Neil Groves<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="permutation/prev_permutation.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithms.html"><img src="../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="new/copy_n.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

Some files were not shown because too many files have changed in this diff Show More