diff options
author | Benjamin Kosnik <bkoz@gcc.gnu.org> | 2009-02-21 00:45:21 +0000 |
---|---|---|
committer | Benjamin Kosnik <bkoz@gcc.gnu.org> | 2009-02-21 00:45:21 +0000 |
commit | 5b9daa7e60b0ccfd2bc99748b4362c6773bcc378 (patch) | |
tree | f65ade8e77926c6fbbf2b4879e1858fce2ea80e0 /libstdc++-v3/include/bits | |
parent | 791838fa91bf2e7cd25b9c6cb247f1e9f7e203a2 (diff) | |
download | gcc-5b9daa7e60b0ccfd2bc99748b4362c6773bcc378.zip gcc-5b9daa7e60b0ccfd2bc99748b4362c6773bcc378.tar.gz gcc-5b9daa7e60b0ccfd2bc99748b4362c6773bcc378.tar.bz2 |
user.cfg.in: Tweaks.
2009-02-20 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in: Tweaks.
* doc/doxygen/doxygroups.cc: Prefer markup that can be elsewhere,
be elsewhere.
* include/tr1_impl/unordered_map: Just use most specialized
container module.
* include/tr1_impl/unordered_set: Same.
* include/tr1_impl/array: Same.
* include/bits/stl_list.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_queue.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/stl_stack.h: Same.
* include/bits/forward_list.h: Same.
* include/bits/basic_string.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/stl_bvector.h: Same.
* include/backward/binders.h: Change binder module to binders.
* include/std/complex: Add complex_numers module.
* include/tr1_impl/complex: Same.
* include/std/valarray: Add numeric_arrays module.
* include/bits/gslice_array.h: Same.
* include/bits/gslice.h: Same.
* include/bits/mask_array.h: Same.
* include/bits/slice_array.h: Same.
* include/bits/indirect_array.h: Same.
* include/bits/allocator.h: Add allocators module.
* include/ext/throw_allocator.h
* include/ext/pool_allocator.h
* include/ext/bitmap_allocator.h
* include/ext/new_allocator.h
* include/ext/malloc_allocator.h
* include/ext/array_allocator.h
* include/ext/mt_allocator.h
* include/ext/debug_allocator.h
* include/ext/extptr_allocator.h
* include/tr1_impl/functional: Move namespace markup here.
* include/tr1_impl/regex: Same.
* include/tr1_impl/type_traits: Add metaprogramming module.
* include/std/type_traits: Same.
* include/std/memory: Add memory module.
* include/std/ratio: Add ratio module.
* include/std/chrono: Move namespace markup here, add time module.
* include/std/thread: Move namespace markup here, add concurrency
module.
* include/std/mutex: Use concurrency module.
* include/std/condition_variable: Same.
* include/bits/ios_base.h: Refine io module.
* include/bits/basic_ios.h: Same.
* include/std/fstream: Same.
* include/std/istream: Same.
* include/std/ostream: Same.
* include/std/sstream: Same.
* include/ext/vstring.h: Correct parameter markup.
* include/bits/shared_ptr.h: Add pointer_abstractions module.
* include/bits/unique_ptr.h: Same.
* include/bits/algorithmfwd.h: Add mutating_algorithms,
non_mutating_algorithms, sorting_algorithms. Adjust nesting.
* include/bits/stl_heap.h: Add markup for new groupings.
* include/bits/stl_algobase.h: Same.
* include/bits/stl_algo.h: Same.
* include/c_compatibility/stdatomic.h: Add atomics module.
* include/c_global/cstdatomic: Same.
* libsupc++/exception: Add exceptions module.
* libsupc++/typeinfo: Same.
* libsupc++/new: Same.
* libsupc++/exception_ptr.h: Same.
* include/std/system_error: Same.
* include/std/stdexcept: Same.
* libsupc++/cxxabi.h: Move doxygroups.cc markup here.
* libsupc++/cxxabi-forced.h: Same.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Fix up line numbers.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc: Same.
* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc: Same.
* testsuite/30_threads/mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/thread/cons/assign_neg.cc: Same.
* testsuite/30_threads/thread/cons/copy_neg.cc: Same.
* testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/condition_variable/cons/assign_neg.cc: Same.
* testsuite/30_threads/condition_variable/cons/copy_neg.cc: Same.
* testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/20_util/duration/cons/1_neg.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Same.
* testsuite/20_util/unique_ptr/assign/assign.cc: Same.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
* testsuite/20_util/ratio/cons/cons_overflow.cc: Same.
* testsuite/20_util/ratio/operations/ops_overflow.cc: Same.
From-SVN: r144343
Diffstat (limited to 'libstdc++-v3/include/bits')
26 files changed, 237 insertions, 88 deletions
diff --git a/libstdc++-v3/include/bits/algorithmfwd.h b/libstdc++-v3/include/bits/algorithmfwd.h index eb2d2dd..3179b58 100644 --- a/libstdc++-v3/include/bits/algorithmfwd.h +++ b/libstdc++-v3/include/bits/algorithmfwd.h @@ -129,8 +129,23 @@ _GLIBCXX_BEGIN_NAMESPACE(std) */ /** - * @defgroup set_algorithms Set Operation Algorithms + * @defgroup mutating_algorithms Mutating Algorithms + * @ingroup algorithms + */ + + /** + * @defgroup non_mutating_algorithms Non-Mutating Algorithms + * @ingroup algorithms + */ + + /** + * @defgroup sorting_algorithms Sorting Algorithms * @ingroup algorithms + */ + + /** + * @defgroup set_algorithms Set Operation Algorithms + * @ingroup sorting_algorithms * * These algorithms are common set operations performed on sequences * that are already sorted. The number of comparisons will be @@ -139,7 +154,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @defgroup binary_search_algorithms Binary Search Algorithms - * @ingroup algorithms + * @ingroup sorting_algorithms * * These algorithms are variations of a classic binary search, and * all assume that the sequence being searched is already sorted. diff --git a/libstdc++-v3/include/bits/allocator.h b/libstdc++-v3/include/bits/allocator.h index a90f7b4..4388299 100644 --- a/libstdc++-v3/include/bits/allocator.h +++ b/libstdc++-v3/include/bits/allocator.h @@ -1,6 +1,6 @@ // Allocators -*- C++ -*- -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -54,6 +54,13 @@ _GLIBCXX_BEGIN_NAMESPACE(std) + /** + * @defgroup allocators Allocators + * @ingroup memory + * + * Classes encapsulating memory operations. + */ + template<typename _Tp> class allocator; @@ -75,6 +82,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief The "standard" allocator, as per [20.4]. + * @ingroup allocators * * Further details: * http://gcc.gnu.org/onlinedocs/libstdc++/manual/bk01pt04ch11.html diff --git a/libstdc++-v3/include/bits/basic_ios.h b/libstdc++-v3/include/bits/basic_ios.h index 3b1052b..d859b86 100644 --- a/libstdc++-v3/include/bits/basic_ios.h +++ b/libstdc++-v3/include/bits/basic_ios.h @@ -1,7 +1,7 @@ // Iostreams base classes -*- C++ -*- // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, -// 2006, 2007, 2008 +// 2006, 2007, 2008, 2009 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -58,6 +58,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) // 27.4.5 Template class basic_ios /** * @brief Virtual base class for all stream classes. + * @ingroup io * * Most of the member functions called dispatched on stream objects * (e.g., @c std::cout.foo(bar);) are consolidated in this class. diff --git a/libstdc++-v3/include/bits/basic_string.h b/libstdc++-v3/include/bits/basic_string.h index 1f6dac9..2a49837 100644 --- a/libstdc++-v3/include/bits/basic_string.h +++ b/libstdc++-v3/include/bits/basic_string.h @@ -53,7 +53,6 @@ _GLIBCXX_BEGIN_NAMESPACE(std) * @class basic_string basic_string.h <string> * @brief Managing sequences of characters and character-like objects. * - * @ingroup containers * @ingroup sequences * * Meets the requirements of a <a href="tables.html#65">container</a>, a diff --git a/libstdc++-v3/include/bits/forward_list.h b/libstdc++-v3/include/bits/forward_list.h index 98a4a62..89ced31 100644 --- a/libstdc++-v3/include/bits/forward_list.h +++ b/libstdc++-v3/include/bits/forward_list.h @@ -400,7 +400,6 @@ _GLIBCXX_BEGIN_NAMESPACE(std) * @brief A standard container with linear time access to elements, * and fixed time insertion/deletion at any point in the sequence. * - * @ingroup containers * @ingroup sequences * * Meets the requirements of a <a href="tables.html#65">container</a>, a diff --git a/libstdc++-v3/include/bits/gslice.h b/libstdc++-v3/include/bits/gslice.h index 7f305f0..353097c 100644 --- a/libstdc++-v3/include/bits/gslice.h +++ b/libstdc++-v3/include/bits/gslice.h @@ -1,6 +1,6 @@ // The template and inlines for the -*- C++ -*- gslice class. -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2004, 2005, 2006 +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2004, 2005, 2006, 2009 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -43,6 +43,11 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** + * @addtogroup numeric_arrays + * @{ + */ + + /** * @brief Class defining multi-dimensional subset of an array. * * The slice class represents a multi-dimensional subset of an array, @@ -175,6 +180,8 @@ _GLIBCXX_BEGIN_NAMESPACE(std) return *this; } + // @} group numeric_arrays + _GLIBCXX_END_NAMESPACE #endif /* _GSLICE_H */ diff --git a/libstdc++-v3/include/bits/gslice_array.h b/libstdc++-v3/include/bits/gslice_array.h index 55ddc3b..7f0325b 100644 --- a/libstdc++-v3/include/bits/gslice_array.h +++ b/libstdc++-v3/include/bits/gslice_array.h @@ -1,6 +1,6 @@ // The template and inlines for the -*- C++ -*- gslice_array class. -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2004, 2005 +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2004, 2005, 2009 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -43,6 +43,11 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** + * @addtogroup numeric_arrays + * @{ + */ + + /** * @brief Reference to multi-dimensional subset of an array. * * A gslice_array is a reference to the actual elements of an array @@ -209,6 +214,8 @@ _DEFINE_VALARRAY_OPERATOR(>>, __shift_right) #undef _DEFINE_VALARRAY_OPERATOR + // @} group numeric_arrays + _GLIBCXX_END_NAMESPACE #endif /* _GSLICE_ARRAY_H */ diff --git a/libstdc++-v3/include/bits/indirect_array.h b/libstdc++-v3/include/bits/indirect_array.h index d43d801..a22581d 100644 --- a/libstdc++-v3/include/bits/indirect_array.h +++ b/libstdc++-v3/include/bits/indirect_array.h @@ -1,6 +1,6 @@ // The template and inlines for the -*- C++ -*- indirect_array class. -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004, 2005 +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004, 2005, 2009 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -43,6 +43,11 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** + * @addtogroup numeric_arrays + * @{ + */ + + /** * @brief Reference to arbitrary subset of an array. * * An indirect_array is a reference to the actual elements of an array @@ -203,6 +208,8 @@ _DEFINE_VALARRAY_OPERATOR(>>, __shift_right) #undef _DEFINE_VALARRAY_OPERATOR + // @} group numeric_arrays + _GLIBCXX_END_NAMESPACE #endif /* _INDIRECT_ARRAY_H */ diff --git a/libstdc++-v3/include/bits/ios_base.h b/libstdc++-v3/include/bits/ios_base.h index db040b8..d9a17d7 100644 --- a/libstdc++-v3/include/bits/ios_base.h +++ b/libstdc++-v3/include/bits/ios_base.h @@ -1,7 +1,7 @@ // Iostreams base classes -*- C++ -*- // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, -// 2006, 2007, 2008 +// 2006, 2007, 2008, 2009 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -202,6 +202,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) // 27.4.2 Class ios_base /** * @brief The base of the I/O class hierarchy. + * @ingroup io * * This class defines everything that can be defined about I/O that does * not depend on the type of characters being input or output. Most @@ -212,8 +213,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std) { public: - // 27.4.2.1.1 Class ios_base::failure - /// These are thrown to indicate problems. Doc me. + /** + * @brief These are thrown to indicate problems with io. + * @ingroup exceptions + * + * 27.4.2.1.1 Class ios_base::failure + */ class failure : public exception { public: diff --git a/libstdc++-v3/include/bits/mask_array.h b/libstdc++-v3/include/bits/mask_array.h index 98c8bfb..dcd12cf 100644 --- a/libstdc++-v3/include/bits/mask_array.h +++ b/libstdc++-v3/include/bits/mask_array.h @@ -1,6 +1,6 @@ // The template and inlines for the -*- C++ -*- mask_array class. -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004, 2005 +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004, 2005, 2009 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -43,6 +43,11 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** + * @addtogroup numeric_arrays + * @{ + */ + + /** * @brief Reference to selected subset of an array. * * A mask_array is a reference to the actual elements of an array specified @@ -199,6 +204,8 @@ _DEFINE_VALARRAY_OPERATOR(>>, __shift_right) #undef _DEFINE_VALARRAY_OPERATOR + // @} group numeric_arrays + _GLIBCXX_END_NAMESPACE #endif /* _MASK_ARRAY_H */ diff --git a/libstdc++-v3/include/bits/shared_ptr.h b/libstdc++-v3/include/bits/shared_ptr.h index e4758dc..8e70984 100644 --- a/libstdc++-v3/include/bits/shared_ptr.h +++ b/libstdc++-v3/include/bits/shared_ptr.h @@ -1,4 +1,4 @@ -// <bits/shared_ptr.h> -*- C++ -*- +// shared_ptr and weak_ptr implementation -*- C++ -*- // Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc. // @@ -59,8 +59,13 @@ # error C++0x header cannot be included from TR1 header #endif -namespace std -{ +_GLIBCXX_BEGIN_NAMESPACE(std) + + /** + * @addtogroup pointer_abstractions + * @{ + */ + // counted ptr with no deleter or allocator support template<typename _Ptr, _Lock_policy _Lp> class _Sp_counted_ptr @@ -541,13 +546,6 @@ namespace std { } - /** - * @class __shared_ptr - * - * A smart pointer with reference-counted copy semantics. - * The object pointed to is deleted when the last shared_ptr pointing to - * it is destroyed or reset. - */ template<typename _Tp, _Lock_policy _Lp> class __shared_ptr { @@ -1228,10 +1226,12 @@ namespace std mutable __weak_ptr<_Tp, _Lp> _M_weak_this; }; - - /// shared_ptr - // The actual shared_ptr, with forwarding constructors and - // assignment operators. + /** + * @brief A smart pointer with reference-counted copy semantics. + * + * The object pointed to is deleted when the last shared_ptr pointing to + * it is destroyed or reset. + */ template<typename _Tp> class shared_ptr : public __shared_ptr<_Tp> @@ -1405,9 +1405,11 @@ namespace std } - /// weak_ptr - // The actual weak_ptr, with forwarding constructors and - // assignment operators. + /** + * @brief A smart pointer with weak semantics. + * + * With forwarding constructors and assignment operators. + */ template<typename _Tp> class weak_ptr : public __weak_ptr<_Tp> @@ -1489,7 +1491,9 @@ namespace std : public _Sp_owner_less<weak_ptr<_Tp>, shared_ptr<_Tp>> { }; - /// enable_shared_from_this + /** + * @brief Base class allowing use of member function shared_from_this. + */ template<typename _Tp> class enable_shared_from_this { @@ -1549,7 +1553,7 @@ namespace std std::forward<_Args>(__args)...); } - /** @brief Create an object that is owned by a shared_ptr. + /** @brief Create an object that is owned by a shared_ptr. * @param __a An allocator. * @param __args Arguments for the @a _Tp object's constructor. * @return A shared_ptr that owns the newly created object. @@ -1582,4 +1586,6 @@ namespace std std::forward<_Args>(__args)...); } -} + // @} group pointer_abstractions + +_GLIBCXX_END_NAMESPACE diff --git a/libstdc++-v3/include/bits/slice_array.h b/libstdc++-v3/include/bits/slice_array.h index d95faa8..27e794e 100644 --- a/libstdc++-v3/include/bits/slice_array.h +++ b/libstdc++-v3/include/bits/slice_array.h @@ -1,6 +1,6 @@ // The template and inlines for the -*- C++ -*- slice_array class. -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004, 2005, 2006 +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004, 2005, 2006, 2009 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -43,6 +43,11 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** + * @addtogroup numeric_arrays + * @{ + */ + + /** * @brief Class defining one-dimensional subset of an array. * * The slice class represents a one-dimensional subset of an array, @@ -265,6 +270,8 @@ _DEFINE_VALARRAY_OPERATOR(>>, __shift_right) #undef _DEFINE_VALARRAY_OPERATOR + // @} group numeric_arrays + _GLIBCXX_END_NAMESPACE #endif /* _SLICE_ARRAY_H */ diff --git a/libstdc++-v3/include/bits/stl_algo.h b/libstdc++-v3/include/bits/stl_algo.h index 64905fb..5309997 100644 --- a/libstdc++-v3/include/bits/stl_algo.h +++ b/libstdc++-v3/include/bits/stl_algo.h @@ -74,11 +74,6 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** - * @addtogroup algorithms Algorithms - * @{ - */ - - /** * @brief Find the median of three values. * @param a A value. * @param b A value. @@ -645,6 +640,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Find last matching subsequence in a sequence. + * @ingroup non_mutating_algorithms * @param first1 Start of range to search. * @param last1 End of range to search. * @param first2 Start of sequence to match. @@ -688,6 +684,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Find last matching subsequence in a sequence using a predicate. + * @ingroup non_mutating_algorithms * @param first1 Start of range to search. * @param last1 End of range to search. * @param first2 Start of sequence to match. @@ -738,6 +735,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Checks that a predicate is true for all the elements * of a sequence. + * @ingroup non_mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param pred A predicate. @@ -754,6 +752,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Checks that a predicate is false for all the elements * of a sequence. + * @ingroup non_mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param pred A predicate. @@ -770,6 +769,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Checks that a predicate is false for at least an element * of a sequence. + * @ingroup non_mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param pred A predicate. @@ -786,6 +786,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Find the first element in a sequence for which a * predicate is false. + * @ingroup non_mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param pred A predicate. @@ -808,6 +809,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Checks whether the sequence is partitioned. + * @ingroup mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param pred A predicate. @@ -826,6 +828,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Find the partition point of a partitioned range. + * @ingroup mutating_algorithms * @param first An iterator. * @param last Another iterator. * @param pred A predicate. @@ -873,6 +876,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Copy a sequence, removing elements of a given value. + * @ingroup mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param result An output iterator. @@ -908,6 +912,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Copy a sequence, removing elements for which a predicate is true. + * @ingroup mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param result An output iterator. @@ -946,6 +951,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) #ifdef __GXX_EXPERIMENTAL_CXX0X__ /** * @brief Copy the elements of a sequence for which a predicate is true. + * @ingroup mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param result An output iterator. @@ -1005,6 +1011,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Copies the range [first,first+n) into [result,result+n). + * @ingroup mutating_algorithms * @param first An input iterator. * @param n The number of elements to copy. * @param result An output iterator. @@ -1031,6 +1038,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Copy the elements of a sequence to separate output sequences * depending on the truth value of a predicate. + * @ingroup mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param out_true An output iterator. @@ -1077,6 +1085,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Remove elements from a sequence. + * @ingroup mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param value The value to be removed. @@ -1119,6 +1128,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Remove elements from a sequence using a predicate. + * @ingroup mutating_algorithms * @param first A forward iterator. * @param last A forward iterator. * @param pred A predicate. @@ -1161,6 +1171,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Remove consecutive duplicate values from a sequence. + * @ingroup mutating_algorithms * @param first A forward iterator. * @param last A forward iterator. * @return An iterator designating the end of the resulting sequence. @@ -1199,6 +1210,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Remove consecutive values from a sequence using a predicate. + * @ingroup mutating_algorithms * @param first A forward iterator. * @param last A forward iterator. * @param binary_pred A binary predicate. @@ -1429,6 +1441,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Reverse a sequence. + * @ingroup mutating_algorithms * @param first A bidirectional iterator. * @param last A bidirectional iterator. * @return reverse() returns no value. @@ -1451,6 +1464,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Copy a sequence, reversing its elements. + * @ingroup mutating_algorithms * @param first A bidirectional iterator. * @param last A bidirectional iterator. * @param result An output iterator. @@ -1640,6 +1654,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Rotate the elements of a sequence. + * @ingroup mutating_algorithms * @param first A forward iterator. * @param middle A forward iterator. * @param last A forward iterator. @@ -1674,6 +1689,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Copy a sequence, rotating its elements. + * @ingroup mutating_algorithms * @param first A forward iterator. * @param middle A forward iterator. * @param last A forward iterator. @@ -1833,6 +1849,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Move elements for which a predicate is true to the beginning * of a sequence, preserving relative ordering. + * @ingroup mutating_algorithms * @param first A forward iterator. * @param last A forward iterator. * @param pred A predicate functor. @@ -1912,6 +1929,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Copy the smallest elements of a sequence. + * @ingroup sorting_algorithms * @param first An iterator. * @param last Another iterator. * @param result_first A random-access iterator. @@ -1976,6 +1994,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Copy the smallest elements of a sequence using a predicate for * comparison. + * @ingroup sorting_algorithms * @param first An input iterator. * @param last Another input iterator. * @param result_first A random-access iterator. @@ -2440,6 +2459,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Finds the first position in which @a val could be inserted * without changing the ordering. + * @ingroup binary_search_algorithms * @param first An iterator. * @param last Another iterator. * @param val The search term. @@ -2492,6 +2512,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Finds the last position in which @a val could be inserted * without changing the ordering. + * @ingroup binary_search_algorithms * @param first An iterator. * @param last Another iterator. * @param val The search term. @@ -2538,6 +2559,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Finds the last position in which @a val could be inserted * without changing the ordering. + * @ingroup binary_search_algorithms * @param first An iterator. * @param last Another iterator. * @param val The search term. @@ -2590,6 +2612,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Finds the largest subrange in which @a val could be inserted * at any place in it without changing the ordering. + * @ingroup binary_search_algorithms * @param first An iterator. * @param last Another iterator. * @param val The search term. @@ -2717,11 +2740,11 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Determines whether an element exists in a range. + * @ingroup binary_search_algorithms * @param first An iterator. * @param last Another iterator. * @param val The search term. * @return True if @a val (or its equivalent) is in [@a first,@a last ]. - * @ingroup binary_search_algorithms * * Note that this does not actually return an iterator to @a val. For * that, use std::find or a container's specialized find member functions. @@ -2746,12 +2769,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Determines whether an element exists in a range. + * @ingroup binary_search_algorithms * @param first An iterator. * @param last Another iterator. * @param val The search term. * @param comp A functor to use for comparisons. * @return True if @a val (or its equivalent) is in [@a first,@a last ]. - * @ingroup binary_search_algorithms * * Note that this does not actually return an iterator to @a val. For * that, use std::find or a container's specialized find member functions. @@ -3091,6 +3114,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Merges two sorted ranges in place. + * @ingroup sorting_algorithms * @param first An iterator. * @param middle Another iterator. * @param last Another iterator. @@ -3141,6 +3165,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Merges two sorted ranges in place. + * @ingroup sorting_algorithms * @param first An iterator. * @param middle Another iterator. * @param last Another iterator. @@ -3477,6 +3502,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Determines whether all elements of a sequence exists in a range * using comparison. + * @ingroup set_algorithms * @param first1 Start of search range. * @param last1 End of search range. * @param first2 Start of sequence @@ -3538,6 +3564,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Permute range into the next "dictionary" ordering. + * @ingroup sorting_algorithms * @param first Start of range. * @param last End of range. * @return False if wrapped to first permutation, true otherwise. @@ -3592,6 +3619,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Permute range into the next "dictionary" ordering using * comparison functor. + * @ingroup sorting_algorithms * @param first Start of range. * @param last End of range. * @param comp A comparison functor. @@ -3648,6 +3676,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Permute range into the previous "dictionary" ordering. + * @ingroup sorting_algorithms * @param first Start of range. * @param last End of range. * @return False if wrapped to last permutation, true otherwise. @@ -3703,6 +3732,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Permute range into the previous "dictionary" ordering using * comparison functor. + * @ingroup sorting_algorithms * @param first Start of range. * @param last End of range. * @param comp A comparison functor. @@ -3799,6 +3829,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Copy a sequence, replacing each value for which a predicate * returns true with another value. + * @ingroup mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param result An output iterator. @@ -3836,6 +3867,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) #ifdef __GXX_EXPERIMENTAL_CXX0X__ /** * @brief Determines whether the elements of a sequence are sorted. + * @ingroup sorting_algorithms * @param first An iterator. * @param last Another iterator. * @return True if the elements are sorted, false otherwise. @@ -3848,6 +3880,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Determines whether the elements of a sequence are sorted * according to a comparison functor. + * @ingroup sorting_algorithms * @param first An iterator. * @param last Another iterator. * @param comp A comparison functor. @@ -3861,6 +3894,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Determines the end of a sorted sequence. + * @ingroup sorting_algorithms * @param first An iterator. * @param last Another iterator. * @return An iterator pointing to the last iterator i in [first, last) @@ -3888,6 +3922,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Determines the end of a sorted sequence using comparison functor. + * @ingroup sorting_algorithms * @param first An iterator. * @param last Another iterator. * @param comp A comparison functor. @@ -3918,6 +3953,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Determines min and max at once as an ordered pair. + * @ingroup sorting_algorithms * @param a A thing of arbitrary type. * @param b Another thing of arbitrary type. * @return A pair(b, a) if b is smaller than a, pair(a, b) otherwise. @@ -3935,6 +3971,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Determines min and max at once as an ordered pair. + * @ingroup sorting_algorithms * @param a A thing of arbitrary type. * @param b Another thing of arbitrary type. * @param comp A @link comparison_functor comparison functor@endlink. @@ -3951,6 +3988,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Return a pair of iterators pointing to the minimum and maximum * elements in a range. + * @ingroup sorting_algorithms * @param first Start of range. * @param last End of range. * @return make_pair(m, M), where m is the first iterator i in @@ -4025,6 +4063,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Return a pair of iterators pointing to the minimum and maximum * elements in a range. + * @ingroup sorting_algorithms * @param first Start of range. * @param last End of range. * @param comp Comparison functor. @@ -4139,19 +4178,13 @@ _GLIBCXX_BEGIN_NAMESPACE(std) } #endif // __GXX_EXPERIMENTAL_CXX0X__ - /* @} */ // group algorithms - _GLIBCXX_END_NAMESPACE _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** - * @addtogroup algorithms Algorithms - * @{ - */ - - /** * @brief Apply a function to every element of a sequence. + * @ingroup non_mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param f A unary function object. @@ -4175,6 +4208,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Find the first occurrence of a value in a sequence. + * @ingroup non_mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param val The value to find. @@ -4198,6 +4232,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Find the first element in a sequence for which a * predicate is true. + * @ingroup non_mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param pred A predicate. @@ -4220,6 +4255,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Find element from a set in a sequence. + * @ingroup non_mutating_algorithms * @param first1 Start of range to search. * @param last1 End of range to search. * @param first2 Start of match candidates. @@ -4255,6 +4291,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Find element from a set in a sequence using a predicate. + * @ingroup non_mutating_algorithms * @param first1 Start of range to search. * @param last1 End of range to search. * @param first2 Start of match candidates. @@ -4295,6 +4332,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Find two adjacent values in a sequence that are equal. + * @ingroup non_mutating_algorithms * @param first A forward iterator. * @param last A forward iterator. * @return The first iterator @c i such that @c i and @c i+1 are both @@ -4324,6 +4362,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Find two adjacent values in a sequence using a predicate. + * @ingroup non_mutating_algorithms * @param first A forward iterator. * @param last A forward iterator. * @param binary_pred A binary predicate. @@ -4357,6 +4396,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Count the number of copies of a value in a sequence. + * @ingroup non_mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param value The value to be counted. @@ -4381,6 +4421,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Count the elements of a sequence for which a predicate is true. + * @ingroup non_mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param pred A predicate. @@ -4405,6 +4446,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Search a sequence for a matching sub-sequence. + * @ingroup non_mutating_algorithms * @param first1 A forward iterator. * @param last1 A forward iterator. * @param first2 A forward iterator. @@ -4478,6 +4520,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Search a sequence for a matching sub-sequence using a predicate. + * @ingroup non_mutating_algorithms * @param first1 A forward iterator. * @param last1 A forward iterator. * @param first2 A forward iterator. @@ -4558,6 +4601,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Search a sequence for a number of consecutive values. + * @ingroup non_mutating_algorithms * @param first A forward iterator. * @param last A forward iterator. * @param count The number of consecutive values. @@ -4592,6 +4636,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Search a sequence for a number of consecutive values using a * predicate. + * @ingroup non_mutating_algorithms * @param first A forward iterator. * @param last A forward iterator. * @param count The number of consecutive values. @@ -4632,6 +4677,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Perform an operation on a sequence. + * @ingroup mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param result An output iterator. @@ -4665,6 +4711,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Perform an operation on corresponding elements of two sequences. + * @ingroup mutating_algorithms * @param first1 An input iterator. * @param last1 An input iterator. * @param first2 An input iterator. @@ -4703,6 +4750,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Replace each occurrence of one value in a sequence with another * value. + * @ingroup mutating_algorithms * @param first A forward iterator. * @param last A forward iterator. * @param old_value The value to be replaced. @@ -4734,6 +4782,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Replace each value in a sequence for which a predicate returns * true with another value. + * @ingroup mutating_algorithms * @param first A forward iterator. * @param last A forward iterator. * @param pred A predicate. @@ -4765,6 +4814,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Assign the result of a function object to each value in a * sequence. + * @ingroup mutating_algorithms * @param first A forward iterator. * @param last A forward iterator. * @param gen A function object taking no arguments and returning @@ -4792,6 +4842,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Assign the result of a function object to each value in a * sequence. + * @ingroup mutating_algorithms * @param first A forward iterator. * @param n The length of the sequence. * @param gen A function object taking no arguments and returning @@ -4818,6 +4869,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Copy a sequence, removing consecutive duplicate values. + * @ingroup mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param result An output iterator. @@ -4858,6 +4910,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Copy a sequence, removing consecutive values using a predicate. + * @ingroup mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param result An output iterator. @@ -4897,6 +4950,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Randomly shuffle the elements of a sequence. + * @ingroup mutating_algorithms * @param first A forward iterator. * @param last A forward iterator. * @return Nothing. @@ -4922,6 +4976,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Shuffle the elements of a sequence using a random number * generator. + * @ingroup mutating_algorithms * @param first A forward iterator. * @param last A forward iterator. * @param rand The RNG functor or function. @@ -4952,6 +5007,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Move elements for which a predicate is true to the beginning * of a sequence. + * @ingroup mutating_algorithms * @param first A forward iterator. * @param last A forward iterator. * @param pred A predicate functor. @@ -4983,6 +5039,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Sort the smallest elements of a sequence. + * @ingroup sorting_algorithms * @param first An iterator. * @param middle Another iterator. * @param last Another iterator. @@ -5019,6 +5076,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Sort the smallest elements of a sequence using a predicate * for comparison. + * @ingroup sorting_algorithms * @param first An iterator. * @param middle Another iterator. * @param last Another iterator. @@ -5058,6 +5116,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Sort a sequence just enough to find a particular position. + * @ingroup sorting_algorithms * @param first An iterator. * @param nth Another iterator. * @param last Another iterator. @@ -5096,6 +5155,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Sort a sequence just enough to find a particular position * using a predicate for comparison. + * @ingroup sorting_algorithms * @param first An iterator. * @param nth Another iterator. * @param last Another iterator. @@ -5135,6 +5195,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Sort the elements of a sequence. + * @ingroup sorting_algorithms * @param first An iterator. * @param last Another iterator. * @return Nothing. @@ -5169,6 +5230,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Sort the elements of a sequence using a predicate for comparison. + * @ingroup sorting_algorithms * @param first An iterator. * @param last Another iterator. * @param comp A comparison functor. @@ -5206,6 +5268,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Merges two sorted ranges. + * @ingroup sorting_algorithms * @param first1 An iterator. * @param first2 Another iterator. * @param last1 Another iterator. @@ -5264,6 +5327,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Merges two sorted ranges. + * @ingroup sorting_algorithms * @param first1 An iterator. * @param first2 Another iterator. * @param last1 Another iterator. @@ -5329,6 +5393,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Sort the elements of a sequence, preserving the relative order * of equivalent elements. + * @ingroup sorting_algorithms * @param first An iterator. * @param last Another iterator. * @return Nothing. @@ -5369,6 +5434,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Sort the elements of a sequence using a predicate for comparison, * preserving the relative order of equivalent elements. + * @ingroup sorting_algorithms * @param first An iterator. * @param last Another iterator. * @param comp A comparison functor. @@ -5413,6 +5479,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Return the union of two sorted ranges. + * @ingroup set_algorithms * @param first1 Start of first range. * @param last1 End of first range. * @param first2 Start of second range. @@ -5478,6 +5545,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Return the union of two sorted ranges using a comparison functor. + * @ingroup set_algorithms * @param first1 Start of first range. * @param last1 End of first range. * @param first2 Start of second range. @@ -5546,6 +5614,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Return the intersection of two sorted ranges. + * @ingroup set_algorithms * @param first1 Start of first range. * @param last1 End of first range. * @param first2 Start of second range. @@ -5600,6 +5669,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Return the intersection of two sorted ranges using comparison * functor. + * @ingroup set_algorithms * @param first1 Start of first range. * @param last1 End of first range. * @param first2 Start of second range. @@ -5657,6 +5727,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Return the difference of two sorted ranges. + * @ingroup set_algorithms * @param first1 Start of first range. * @param last1 End of first range. * @param first2 Start of second range. @@ -5715,6 +5786,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Return the difference of two sorted ranges using comparison * functor. + * @ingroup set_algorithms * @param first1 Start of first range. * @param last1 End of first range. * @param first2 Start of second range. @@ -5776,6 +5848,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Return the symmetric difference of two sorted ranges. + * @ingroup set_algorithms * @param first1 Start of first range. * @param last1 End of first range. * @param first2 Start of second range. @@ -5839,6 +5912,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Return the symmetric difference of two sorted ranges using * comparison functor. + * @ingroup set_algorithms * @param first1 Start of first range. * @param last1 End of first range. * @param first2 Start of second range. @@ -5907,6 +5981,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Return the minimum element in a range. + * @ingroup sorting_algorithms * @param first Start of range. * @param last End of range. * @return Iterator referencing the first instance of the smallest value. @@ -5932,6 +6007,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Return the minimum element in a range using comparison functor. + * @ingroup sorting_algorithms * @param first Start of range. * @param last End of range. * @param comp Comparison functor. @@ -5961,6 +6037,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Return the maximum element in a range. + * @ingroup sorting_algorithms * @param first Start of range. * @param last End of range. * @return Iterator referencing the first instance of the largest value. @@ -5986,6 +6063,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Return the maximum element in a range using comparison functor. + * @ingroup sorting_algorithms * @param first Start of range. * @param last End of range. * @param comp Comparison functor. @@ -6012,8 +6090,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) return __result; } - /* @} */ // group algorithms - _GLIBCXX_END_NESTED_NAMESPACE #endif /* _STL_ALGO_H */ diff --git a/libstdc++-v3/include/bits/stl_algobase.h b/libstdc++-v3/include/bits/stl_algobase.h index a5f736e..f370677 100644 --- a/libstdc++-v3/include/bits/stl_algobase.h +++ b/libstdc++-v3/include/bits/stl_algobase.h @@ -78,11 +78,6 @@ _GLIBCXX_BEGIN_NAMESPACE(std) - /** - * @addtogroup algorithms Algorithms - * @{ - */ - // See http://gcc.gnu.org/ml/libstdc++/2004-08/msg00167.html: in a // nutshell, we are partially implementing the resolution of DR 187, // when it's safe, i.e., the value_types are equal. @@ -114,6 +109,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Swaps the contents of two iterators. + * @ingroup mutating_algorithms * @param a An iterator. * @param b Another iterator. * @return Nothing. @@ -152,6 +148,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Swap the elements of two sequences. + * @ingroup mutating_algorithms * @param first1 A forward iterator. * @param last1 A forward iterator. * @param first2 A forward iterator. @@ -180,6 +177,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief This does what you think it does. + * @ingroup sorting_algorithms * @param a A thing of arbitrary type. * @param b Another thing of arbitrary type. * @return The lesser of the parameters. @@ -202,6 +200,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief This does what you think it does. + * @ingroup sorting_algorithms * @param a A thing of arbitrary type. * @param b Another thing of arbitrary type. * @return The greater of the parameters. @@ -224,6 +223,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief This does what you think it does. + * @ingroup sorting_algorithms * @param a A thing of arbitrary type. * @param b Another thing of arbitrary type. * @param comp A @link comparison_functors comparison functor@endlink. @@ -244,6 +244,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief This does what you think it does. + * @ingroup sorting_algorithms * @param a A thing of arbitrary type. * @param b Another thing of arbitrary type. * @param comp A @link comparison_functors comparison functor@endlink. @@ -442,6 +443,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Copies the range [first,last) into result. + * @ingroup mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param result An output iterator. @@ -474,6 +476,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) #ifdef __GXX_EXPERIMENTAL_CXX0X__ /** * @brief Moves the range [first,last) into result. + * @ingroup mutating_algorithms * @param first An input iterator. * @param last An input iterator. * @param result An output iterator. @@ -609,6 +612,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Copies the range [first,last) into result. + * @ingroup mutating_algorithms * @param first A bidirectional iterator. * @param last A bidirectional iterator. * @param result A bidirectional iterator. @@ -644,6 +648,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) #ifdef __GXX_EXPERIMENTAL_CXX0X__ /** * @brief Moves the range [first,last) into result. + * @ingroup mutating_algorithms * @param first A bidirectional iterator. * @param last A bidirectional iterator. * @param result A bidirectional iterator. @@ -715,6 +720,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Fills the range [first,last) with copies of value. + * @ingroup mutating_algorithms * @param first A forward iterator. * @param last A forward iterator. * @param value A reference-to-const of arbitrary type. @@ -769,6 +775,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief Fills the range [first,first+n) with copies of value. + * @ingroup mutating_algorithms * @param first An output iterator. * @param n The count of copies to perform. * @param value A reference-to-const of arbitrary type. @@ -929,19 +936,13 @@ _GLIBCXX_BEGIN_NAMESPACE(std) __first2, __last2); } - /* @} */ // group algorithms - _GLIBCXX_END_NAMESPACE _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** - * @addtogroup algorithms Algorithms - * @{ - */ - - /** * @brief Tests a range for element-wise equality. + * @ingroup non_mutating_algorithms * @param first1 An input iterator. * @param last1 An input iterator. * @param first2 An input iterator. @@ -970,6 +971,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Tests a range for element-wise equality. + * @ingroup non_mutating_algorithms * @param first1 An input iterator. * @param last1 An input iterator. * @param first2 An input iterator. @@ -1000,6 +1002,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Performs "dictionary" comparison on ranges. + * @ingroup sorting_algorithms * @param first1 An input iterator. * @param last1 An input iterator. * @param first2 An input iterator. @@ -1036,6 +1039,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Performs "dictionary" comparison on ranges. + * @ingroup sorting_algorithms * @param first1 An input iterator. * @param last1 An input iterator. * @param first2 An input iterator. @@ -1075,6 +1079,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Finds the places in ranges which don't match. + * @ingroup non_mutating_algorithms * @param first1 An input iterator. * @param last1 An input iterator. * @param first2 An input iterator. @@ -1108,6 +1113,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) /** * @brief Finds the places in ranges which don't match. + * @ingroup non_mutating_algorithms * @param first1 An input iterator. * @param last1 An input iterator. * @param first2 An input iterator. @@ -1140,8 +1146,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P) return pair<_InputIterator1, _InputIterator2>(__first1, __first2); } - /* @} */ // group algorithms - _GLIBCXX_END_NESTED_NAMESPACE // NB: This file is included within many other C++ includes, as a way diff --git a/libstdc++-v3/include/bits/stl_bvector.h b/libstdc++-v3/include/bits/stl_bvector.h index beb89b6..416fba8 100644 --- a/libstdc++-v3/include/bits/stl_bvector.h +++ b/libstdc++-v3/include/bits/stl_bvector.h @@ -467,7 +467,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D) * really references and pointers to bool. See DR96 for details. @see * vector for function documentation. * - * @ingroup containers * @ingroup sequences * * In some terminology a %vector can be described as a dynamic diff --git a/libstdc++-v3/include/bits/stl_deque.h b/libstdc++-v3/include/bits/stl_deque.h index b02334b..1dbe023 100644 --- a/libstdc++-v3/include/bits/stl_deque.h +++ b/libstdc++-v3/include/bits/stl_deque.h @@ -562,7 +562,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D) * @brief A standard container using fixed-size memory allocation and * constant-time manipulation of elements at either end. * - * @ingroup containers * @ingroup sequences * * Meets the requirements of a <a href="tables.html#65">container</a>, a diff --git a/libstdc++-v3/include/bits/stl_heap.h b/libstdc++-v3/include/bits/stl_heap.h index 6b0840c..10c2a9d 100644 --- a/libstdc++-v3/include/bits/stl_heap.h +++ b/libstdc++-v3/include/bits/stl_heap.h @@ -1,6 +1,6 @@ // Heap implementation -*- C++ -*- -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -66,6 +66,11 @@ _GLIBCXX_BEGIN_NAMESPACE(std) + /** + * @defgroup heap_algorithms Heap Algorithms + * @ingroup sorting_algorithms + */ + template<typename _RandomAccessIterator, typename _Distance> _Distance __is_heap_until(_RandomAccessIterator __first, _Distance __n) @@ -144,7 +149,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) * @brief Push an element onto a heap. * @param first Start of heap. * @param last End of heap + element. - * @ingroup heap + * @ingroup heap_algorithms * * This operation pushes the element at last-1 onto the valid heap over the * range [first,last-1). After completion, [first,last) is a valid heap. @@ -192,7 +197,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) * @param first Start of heap. * @param last End of heap + element. * @param comp Comparison functor. - * @ingroup heap + * @ingroup heap_algorithms * * This operation pushes the element at last-1 onto the valid heap over the * range [first,last-1). After completion, [first,last) is a valid heap. @@ -266,7 +271,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) * @brief Pop an element off a heap. * @param first Start of heap. * @param last End of heap. - * @ingroup heap + * @ingroup heap_algorithms * * This operation pops the top of the heap. The elements first and last-1 * are swapped and [first,last-1) is made into a heap. @@ -339,7 +344,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) * @param first Start of heap. * @param last End of heap. * @param comp Comparison functor to use. - * @ingroup heap + * @ingroup heap_algorithms * * This operation pops the top of the heap. The elements first and last-1 * are swapped and [first,last-1) is made into a heap. Comparisons are @@ -364,7 +369,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) * @brief Construct a heap over a range. * @param first Start of heap. * @param last End of heap. - * @ingroup heap + * @ingroup heap_algorithms * * This operation makes the elements in [first,last) into a heap. */ @@ -403,7 +408,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) * @param first Start of heap. * @param last End of heap. * @param comp Comparison functor to use. - * @ingroup heap + * @ingroup heap_algorithms * * This operation makes the elements in [first,last) into a heap. * Comparisons are made using comp. @@ -443,7 +448,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) * @brief Sort a heap. * @param first Start of heap. * @param last End of heap. - * @ingroup heap + * @ingroup heap_algorithms * * This operation sorts the valid heap in the range [first,last). */ @@ -471,7 +476,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) * @param first Start of heap. * @param last End of heap. * @param comp Comparison functor to use. - * @ingroup heap + * @ingroup heap_algorithms * * This operation sorts the valid heap in the range [first,last). * Comparisons are made using comp. @@ -500,7 +505,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) * @param first Start of range. * @param last End of range. * @return An iterator pointing to the first element not in the heap. - * @ingroup heap + * @ingroup heap_algorithms * * This operation returns the last iterator i in [first, last) for which * the range [first, i) is a heap. @@ -526,7 +531,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) * @param last End of range. * @param comp Comparison functor to use. * @return An iterator pointing to the first element not in the heap. - * @ingroup heap + * @ingroup heap_algorithms * * This operation returns the last iterator i in [first, last) for which * the range [first, i) is a heap. Comparisons are made using comp. @@ -551,7 +556,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) * @param first Start of range. * @param last End of range. * @return True if range is a heap, false otherwise. - * @ingroup heap + * @ingroup heap_algorithms */ template<typename _RandomAccessIterator> inline bool @@ -564,7 +569,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) * @param last End of range. * @param comp Comparison functor to use. * @return True if range is a heap, false otherwise. - * @ingroup heap + * @ingroup heap_algorithms */ template<typename _RandomAccessIterator, typename _Compare> inline bool diff --git a/libstdc++-v3/include/bits/stl_list.h b/libstdc++-v3/include/bits/stl_list.h index 1bb6bbb..6eb1f23 100644 --- a/libstdc++-v3/include/bits/stl_list.h +++ b/libstdc++-v3/include/bits/stl_list.h @@ -379,7 +379,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D) * @brief A standard container with linear time access to elements, * and fixed time insertion/deletion at any point in the sequence. * - * @ingroup containers * @ingroup sequences * * Meets the requirements of a <a href="tables.html#65">container</a>, a diff --git a/libstdc++-v3/include/bits/stl_map.h b/libstdc++-v3/include/bits/stl_map.h index d508534..d27592f 100644 --- a/libstdc++-v3/include/bits/stl_map.h +++ b/libstdc++-v3/include/bits/stl_map.h @@ -72,7 +72,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D) * @brief A standard container made up of (key,value) pairs, which can be * retrieved based on a key, in logarithmic time. * - * @ingroup containers * @ingroup associative_containers * * Meets the requirements of a <a href="tables.html#65">container</a>, a diff --git a/libstdc++-v3/include/bits/stl_multimap.h b/libstdc++-v3/include/bits/stl_multimap.h index ed3576f..3c8e7d7 100644 --- a/libstdc++-v3/include/bits/stl_multimap.h +++ b/libstdc++-v3/include/bits/stl_multimap.h @@ -71,7 +71,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D) * @brief A standard container made up of (key,value) pairs, which can be * retrieved based on a key, in logarithmic time. * - * @ingroup containers * @ingroup associative_containers * * Meets the requirements of a <a href="tables.html#65">container</a>, a diff --git a/libstdc++-v3/include/bits/stl_multiset.h b/libstdc++-v3/include/bits/stl_multiset.h index fefbdf8..6723c1a 100644 --- a/libstdc++-v3/include/bits/stl_multiset.h +++ b/libstdc++-v3/include/bits/stl_multiset.h @@ -71,7 +71,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D) * @brief A standard container made up of elements, which can be retrieved * in logarithmic time. * - * @ingroup containers * @ingroup associative_containers * * Meets the requirements of a <a href="tables.html#65">container</a>, a diff --git a/libstdc++-v3/include/bits/stl_queue.h b/libstdc++-v3/include/bits/stl_queue.h index da91cb78..69ca0db 100644 --- a/libstdc++-v3/include/bits/stl_queue.h +++ b/libstdc++-v3/include/bits/stl_queue.h @@ -70,7 +70,6 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief A standard container giving FIFO behavior. * - * @ingroup containers * @ingroup sequences * * Meets many of the requirements of a @@ -338,7 +337,6 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief A standard container automatically sorting its contents. * - * @ingroup containers * @ingroup sequences * * This is not a true container, but an @e adaptor. It holds diff --git a/libstdc++-v3/include/bits/stl_set.h b/libstdc++-v3/include/bits/stl_set.h index 107a071..7fdf20f 100644 --- a/libstdc++-v3/include/bits/stl_set.h +++ b/libstdc++-v3/include/bits/stl_set.h @@ -71,7 +71,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D) * @brief A standard container made up of unique keys, which can be * retrieved in logarithmic time. * - * @ingroup containers * @ingroup associative_containers * * Meets the requirements of a <a href="tables.html#65">container</a>, a diff --git a/libstdc++-v3/include/bits/stl_stack.h b/libstdc++-v3/include/bits/stl_stack.h index 28477ad..55a544a 100644 --- a/libstdc++-v3/include/bits/stl_stack.h +++ b/libstdc++-v3/include/bits/stl_stack.h @@ -70,7 +70,6 @@ _GLIBCXX_BEGIN_NAMESPACE(std) /** * @brief A standard container giving FILO behavior. * - * @ingroup containers * @ingroup sequences * * Meets many of the requirements of a diff --git a/libstdc++-v3/include/bits/stl_vector.h b/libstdc++-v3/include/bits/stl_vector.h index e6bbf5d..2350e7f 100644 --- a/libstdc++-v3/include/bits/stl_vector.h +++ b/libstdc++-v3/include/bits/stl_vector.h @@ -157,7 +157,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D) * @brief A standard container which offers fixed time access to * individual elements in any order. * - * @ingroup containers * @ingroup sequences * * Meets the requirements of a <a href="tables.html#65">container</a>, a diff --git a/libstdc++-v3/include/bits/unique_ptr.h b/libstdc++-v3/include/bits/unique_ptr.h index 5e4fa8c..51573c0 100644 --- a/libstdc++-v3/include/bits/unique_ptr.h +++ b/libstdc++-v3/include/bits/unique_ptr.h @@ -47,6 +47,11 @@ _GLIBCXX_BEGIN_NAMESPACE(std) + /** + * @addtogroup pointer_abstractions + * @{ + */ + /// Primary template, default_delete. template<typename _Tp> struct default_delete @@ -443,6 +448,8 @@ _GLIBCXX_BEGIN_NAMESPACE(std) const unique_ptr<_Up, _Up_Deleter>& __y) { return !(__x.get() < __y.get()); } + // @} group pointer_abstractions + _GLIBCXX_END_NAMESPACE #endif /* _UNIQUE_PTR_H */ |