libstdc++
Class Hierarchy

Go to the graphical class hierarchy

This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12345]
oC__cxxabiv1::__forced_unwindThrown as part of forced unwinding.A magic placeholder class that can be caught by reference to recognize forced unwinding
oC__gnu_cxx::__common_pool_policy< _PoolTp, _Thread >Policy for shared __pool objects
oC__gnu_cxx::__detail::__mini_vector< _Tp >__mini_vector<> is a stripped down version of the full-fledged std::vector<>
oC__gnu_cxx::__detail::_Bitmap_counter< _Tp >The bitmap counter which acts as the bitmap manipulator, and manages the bit-manipulation functions and the searching and identification functions on the bit-map
oC__gnu_cxx::__mt_alloc_base< _Tp >Base class for _Tp dependent member functions
oC__gnu_cxx::__per_type_pool_policy< _Tp, _PoolTp, _Thread >Policy for individual __pool objects
oC__gnu_cxx::__pool_alloc_baseBase class for __pool_alloc
oC__gnu_cxx::__pool_baseBase class for pool object
oC__gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >
oC__gnu_cxx::__scoped_lockScoped lock idiom
oC__gnu_cxx::__versa_string< _CharT, _Traits, _Alloc, _Base >Template class __versa_string.Data structure managing sequences of characters and character-like objects
oC__gnu_cxx::_Caster< _ToType >
oC__gnu_cxx::_Char_types< _CharT >Mapping from character type to associated types
oC__gnu_cxx::_ExtPtr_allocator< _Tp >An example allocator which uses a non-standard pointer type.This allocator specifies that containers use a 'relative pointer' as it's pointer type. (See ext/pointer.h) Memory allocation in this example is still performed using std::allocator
oC__gnu_cxx::_Invalid_type
oC__gnu_cxx::_Pointer_adapter< _Storage_policy >
oC__gnu_cxx::_Relative_pointer_impl< _Tp >A storage policy for use with _Pointer_adapter<> which stores the pointer's address as an offset value which is relative to its own address
oC__gnu_cxx::_Relative_pointer_impl< const _Tp >
oC__gnu_cxx::_Std_pointer_impl< _Tp >A storage policy for use with _Pointer_adapter<> which yields a standard pointer
oC__gnu_cxx::_Unqualified_type< _Tp >
oC__gnu_cxx::annotate_baseBase class for checking address and label information about allocations. Create a std::map between the allocated address (void*) and a datum for annotations, which are a pair of numbers corresponding to label and allocated size
oC__gnu_cxx::array_allocator_base< _Tp >Base class
oC__gnu_cxx::char_traits< _CharT >Base class used to implement std::char_traits
oC__gnu_cxx::character< V, I, S >A POD class that serves as a character abstraction class
oC__gnu_cxx::condition_baseBase struct for condition policy
oC__gnu_cxx::constant_binary_fun< _Result, _Arg1, _Arg2 >An SGI extension
oC__gnu_cxx::constant_unary_fun< _Result, _Argument >An SGI extension
oC__gnu_cxx::constant_void_fun< _Result >An SGI extension
oC__gnu_cxx::debug_allocator< _Alloc >A meta-allocator with debugging bits, as per [20.4].This is precisely the allocator defined in the C++ Standard
oC__gnu_cxx::encoding_stateExtension to use iconv for dealing with character encodings
oC__gnu_cxx::free_listThe free list class for managing chunks of memory to be given to and returned by the bitmap_allocator
oC__gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >
oC__gnu_cxx::hash_multimap< _Key, _Tp, _HashFn, _EqualKey, _Alloc >
oC__gnu_cxx::hash_multiset< _Value, _HashFcn, _EqualKey, _Alloc >
oC__gnu_cxx::hash_set< _Value, _HashFcn, _EqualKey, _Alloc >
oC__gnu_cxx::limit_condition::always_adjustorAlways enter the condition
oC__gnu_cxx::limit_condition::limit_adjustorEnter the nth condition
oC__gnu_cxx::limit_condition::never_adjustorNever enter the condition
oC__gnu_cxx::malloc_allocator< _Tp >An allocator that uses malloc.This is precisely the allocator defined in the C++ Standard
oC__gnu_cxx::new_allocator< _Tp >An allocator that uses global new, as per [20.4].This is precisely the allocator defined in the C++ Standard
oC__gnu_cxx::project1st< _Arg1, _Arg2 >An SGI extension
oC__gnu_cxx::project2nd< _Arg1, _Arg2 >An SGI extension
oC__gnu_cxx::random_condition::always_adjustorAlways enter the condition
oC__gnu_cxx::random_condition::group_adjustorGroup condition
oC__gnu_cxx::random_condition::never_adjustorNever enter the condition
oC__gnu_cxx::rb_tree< _Key, _Value, _KeyOfValue, _Compare, _Alloc >
oC__gnu_cxx::rope< _CharT, _Alloc >
oC__gnu_cxx::slist< _Tp, _Alloc >
oC__gnu_cxx::throw_value_base< _Cond >Class with exception generation control. Intended to be used as a value_type in templatized code
oC__gnu_debug::_After_nth_from< _Iterator >
oC__gnu_debug::_BeforeBeginHelper< _Sequence >
oC__gnu_debug::_Equal_to< _Type >
oC__gnu_debug::_Not_equal_to< _Type >
oC__gnu_debug::_Safe_iterator_baseBasic functionality for a safe iterator
oC__gnu_debug::_Safe_sequence_baseBase class that supports tracking of iterators that reference a sequence
oC__gnu_parallel::__accumulate_binop_reduct< _BinOp >General reduction, using a binary operator
oC__gnu_parallel::__generic_find_selectorBase class of all gnu_parallel::find_template selectors
oC__gnu_parallel::__generic_for_each_selector< _It >Generic __selector for embarrassingly parallel functions
oC__gnu_parallel::__max_element_reduct< _Compare, _It >Reduction for finding the maximum element, using a comparator
oC__gnu_parallel::__min_element_reduct< _Compare, _It >Reduction for finding the maximum element, using a comparator
oC__gnu_parallel::__multiway_merge_3_variant_sentinel_switch< __sentinels, _RAIterIterator, _RAIter3, _DifferenceTp, _Compare >Switch for 3-way merging with __sentinels turned off
oC__gnu_parallel::__multiway_merge_3_variant_sentinel_switch< true, _RAIterIterator, _RAIter3, _DifferenceTp, _Compare >Switch for 3-way merging with __sentinels turned on
oC__gnu_parallel::__multiway_merge_4_variant_sentinel_switch< __sentinels, _RAIterIterator, _RAIter3, _DifferenceTp, _Compare >Switch for 4-way merging with __sentinels turned off
oC__gnu_parallel::__multiway_merge_4_variant_sentinel_switch< true, _RAIterIterator, _RAIter3, _DifferenceTp, _Compare >Switch for 4-way merging with __sentinels turned on
oC__gnu_parallel::__multiway_merge_k_variant_sentinel_switch< __sentinels, __stable, _RAIterIterator, _RAIter3, _DifferenceTp, _Compare >Switch for k-way merging with __sentinels turned on
oC__gnu_parallel::__multiway_merge_k_variant_sentinel_switch< false, __stable, _RAIterIterator, _RAIter3, _DifferenceTp, _Compare >Switch for k-way merging with __sentinels turned off
oC__gnu_parallel::_DRandomShufflingGlobalData< _RAIter >Data known to every thread participating in gnu_parallel::parallel_random_shuffle()
oC__gnu_parallel::_DRSSorterPU< _RAIter, _RandomNumberGenerator >Local data for a thread participating in gnu_parallel::parallel_random_shuffle()
oC__gnu_parallel::_DummyReductReduction function doing nothing
oC__gnu_parallel::_GuardedIterator< _RAIter, _Compare >_Iterator wrapper supporting an implicit supremum at the end of the sequence, dominating all comparisons
oC__gnu_parallel::_IteratorTriple< _Iterator1, _Iterator2, _Iterator3, _IteratorCategory >A triple of iterators. The usual iterator operations are applied to all three child iterators
oC__gnu_parallel::_Job< _DifferenceTp >One __job for a certain thread
oC__gnu_parallel::_LoserTreeBase< _Tp, _Compare >Guarded loser/tournament tree
oC__gnu_parallel::_LoserTreeBase< _Tp, _Compare >::_LoserInternal representation of a _LoserTree element
oC__gnu_parallel::_LoserTreePointerBase< _Tp, _Compare >Base class of _Loser Tree implementation using pointers
oC__gnu_parallel::_LoserTreePointerBase< _Tp, _Compare >::_LoserInternal representation of _LoserTree __elements
oC__gnu_parallel::_LoserTreePointerUnguardedBase< _Tp, _Compare >Unguarded loser tree, keeping only pointers to the elements in the tree structure
oC__gnu_parallel::_LoserTreeTraits< _Tp >Traits for determining whether the loser tree should use pointers or copies
oC__gnu_parallel::_LoserTreeUnguardedBase< _Tp, _Compare >Base class for unguarded _LoserTree implementation
oC__gnu_parallel::_NothingFunctor doing nothing
oC__gnu_parallel::_Piece< _DifferenceTp >Subsequence description
oC__gnu_parallel::_PMWMSSortingData< _RAIter >Data accessed by all threads
oC__gnu_parallel::_PseudoSequence< _Tp, _DifferenceTp >Sequence that conceptually consists of multiple copies of the same element. The copies are not stored explicitly, of course
oC__gnu_parallel::_PseudoSequenceIterator< _Tp, _DifferenceTp >_Iterator associated with __gnu_parallel::_PseudoSequence. If features the usual random-access iterator functionality
oC__gnu_parallel::_QSBThreadLocal< _RAIter >Information local to one thread in the parallel quicksort run
oC__gnu_parallel::_RandomNumberRandom number generator, based on the Mersenne twister
oC__gnu_parallel::_RestrictedBoundedConcurrentQueue< _Tp >Double-ended queue of bounded size, allowing lock-free atomic access. push_front() and pop_front() must not be called concurrently to each other, while pop_back() can be called concurrently at all times. empty(), size(), and top() are intentionally not provided. Calling them would not make sense in a concurrent setting
oC__gnu_parallel::_SamplingSorter< __stable, _RAIter, _StrictWeakOrdering >Stable sorting functor
oC__gnu_parallel::_SamplingSorter< false, _RAIter, _StrictWeakOrdering >Non-__stable sorting functor
oC__gnu_parallel::_SettingsClass _Settings Run-time settings for the parallel mode including all tunable parameters
oC__gnu_parallel::_SplitConsistently< __exact, _RAIter, _Compare, _SortingPlacesIterator >Split consistently
oC__gnu_parallel::_SplitConsistently< false, _RAIter, _Compare, _SortingPlacesIterator >Split by sampling
oC__gnu_parallel::_SplitConsistently< true, _RAIter, _Compare, _SortingPlacesIterator >Split by exact splitting
oC__gnu_parallel::find_tagBase class for for std::find() variants
oC__gnu_parallel::parallel_tagRecommends parallel execution at compile time, optionally using a user-specified number of threads
oC__gnu_parallel::sequential_tagForces sequential execution at compile time
oC__gnu_pbds::basic_branch< Key, Mapped, Tag, Node_Update, Policy_Tl, _Alloc >
oC__gnu_pbds::basic_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Resize_Policy, Store_Hash, Tag, Policy_Tl, _Alloc >
oC__gnu_pbds::basic_invalidation_guarantee
oC__gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >A resize trigger policy based on collision checks. It keeps the simulated load factor lower than some given load factor
oC__gnu_pbds::container_tagBase data structure tag
oC__gnu_pbds::container_traits< Cntnr >Container traits
oC__gnu_pbds::container_traits_base< binary_heap_tag >Specialization, binary heap
oC__gnu_pbds::container_traits_base< binomial_heap_tag >Specialization, binomial heap
oC__gnu_pbds::container_traits_base< cc_hash_tag >Specialization, cc hash
oC__gnu_pbds::container_traits_base< gp_hash_tag >Specialization, gp hash
oC__gnu_pbds::container_traits_base< list_update_tag >Specialization, list update
oC__gnu_pbds::container_traits_base< ov_tree_tag >Specialization, ov tree
oC__gnu_pbds::container_traits_base< pairing_heap_tag >Specialization, pairing heap
oC__gnu_pbds::container_traits_base< pat_trie_tag >Specialization, pat trie
oC__gnu_pbds::container_traits_base< rb_tree_tag >Specialization, rb tree
oC__gnu_pbds::container_traits_base< rc_binomial_heap_tag >Specialization, rc binomial heap
oC__gnu_pbds::container_traits_base< splay_tree_tag >Specialization, splay tree
oC__gnu_pbds::container_traits_base< thin_heap_tag >Specialization, thin heap
oC__gnu_pbds::detail::bin_search_tree_const_it_< Node_Pointer, Value_Type, Pointer, Const_Pointer, Reference, Const_Reference, Is_Forward_Iterator, _Alloc >Const iterator
oC__gnu_pbds::detail::bin_search_tree_const_node_it_< Node, Const_Iterator, Iterator, _Alloc >Const node iterator
oC__gnu_pbds::detail::bin_search_tree_traits< Key, Mapped, Cmp_Fn, Node_Update, Node, _Alloc >Binary search tree traits, primary template
oC__gnu_pbds::detail::bin_search_tree_traits< Key, null_type, Cmp_Fn, Node_Update, Node, _Alloc >Specialization
oC__gnu_pbds::detail::binary_heap_point_const_iterator_< Value_Type, Entry, Simple, _Alloc >Const point-type iterator
oC__gnu_pbds::detail::branch_policy< Node_CItr, Node_Itr, _Alloc >Primary template, base class for branch structure policies
oC__gnu_pbds::detail::branch_policy< Node_CItr, Node_CItr, _Alloc >Specialization for const iterators
oC__gnu_pbds::detail::cond_dealtor< Entry, _Alloc >Conditional deallocate constructor argument
oC__gnu_pbds::detail::container_base_dispatch< _VTp, Cmp_Fn, _Alloc, binary_heap_tag, null_type >Specialization for binary_heap
oC__gnu_pbds::detail::container_base_dispatch< _VTp, Cmp_Fn, _Alloc, binomial_heap_tag, null_type >Specialization for binomial_heap
oC__gnu_pbds::detail::container_base_dispatch< _VTp, Cmp_Fn, _Alloc, pairing_heap_tag, null_type >Specialization for pairing_heap
oC__gnu_pbds::detail::container_base_dispatch< _VTp, Cmp_Fn, _Alloc, rc_binomial_heap_tag, null_type >Specialization for rc_binary_heap
oC__gnu_pbds::detail::container_base_dispatch< _VTp, Cmp_Fn, _Alloc, thin_heap_tag, null_type >Specialization for thin_heap
oC__gnu_pbds::detail::container_base_dispatch< Key, Mapped, _Alloc, cc_hash_tag, Policy_Tl >Specialization colision-chaining hash map
oC__gnu_pbds::detail::container_base_dispatch< Key, Mapped, _Alloc, gp_hash_tag, Policy_Tl >Specialization general-probe hash map
oC__gnu_pbds::detail::container_base_dispatch< Key, Mapped, _Alloc, list_update_tag, Policy_Tl >Specialization for list-update map
oC__gnu_pbds::detail::container_base_dispatch< Key, Mapped, _Alloc, ov_tree_tag, Policy_Tl >Specialization ordered-vector tree map
oC__gnu_pbds::detail::container_base_dispatch< Key, Mapped, _Alloc, pat_trie_tag, Policy_Tl >Specialization for PATRICIA trie map
oC__gnu_pbds::detail::container_base_dispatch< Key, Mapped, _Alloc, rb_tree_tag, Policy_Tl >Specialization for R-B tree map
oC__gnu_pbds::detail::container_base_dispatch< Key, Mapped, _Alloc, splay_tree_tag, Policy_Tl >Specialization splay tree map
oC__gnu_pbds::detail::container_base_dispatch< Key, null_type, _Alloc, cc_hash_tag, Policy_Tl >Specialization colision-chaining hash set
oC__gnu_pbds::detail::container_base_dispatch< Key, null_type, _Alloc, gp_hash_tag, Policy_Tl >Specialization general-probe hash set
oC__gnu_pbds::detail::container_base_dispatch< Key, null_type, _Alloc, list_update_tag, Policy_Tl >Specialization for list-update set
oC__gnu_pbds::detail::container_base_dispatch< Key, null_type, _Alloc, ov_tree_tag, Policy_Tl >Specialization ordered-vector tree set
oC__gnu_pbds::detail::container_base_dispatch< Key, null_type, _Alloc, pat_trie_tag, Policy_Tl >Specialization for PATRICIA trie set
oC__gnu_pbds::detail::container_base_dispatch< Key, null_type, _Alloc, rb_tree_tag, Policy_Tl >Specialization for R-B tree set
oC__gnu_pbds::detail::container_base_dispatch< Key, null_type, _Alloc, splay_tree_tag, Policy_Tl >Specialization splay tree set
oC__gnu_pbds::detail::default_comb_hash_fnPrimary template, default_comb_hash_fn
oC__gnu_pbds::detail::default_eq_fn< Key >Primary template, default_eq_fn
oC__gnu_pbds::detail::default_hash_fn< Key >Primary template, default_hash_fn
oC__gnu_pbds::detail::default_probe_fn< Comb_Probe_Fn >Primary template, default_probe_fn
oC__gnu_pbds::detail::default_resize_policy< Comb_Hash_Fn >Primary template, default_resize_policy
oC__gnu_pbds::detail::default_trie_access_traits< std::basic_string< Char, Char_Traits, std::allocator< char > > >Partial specialization, default_trie_access_traits
oC__gnu_pbds::detail::default_update_policyDefault update policy
oC__gnu_pbds::detail::dumnode_const_iterator< Key, Data, _Alloc >Constant node iterator
oC__gnu_pbds::detail::entry_cmp< _VTp, Cmp_Fn, _Alloc, false >Specialization, false
oC__gnu_pbds::detail::entry_cmp< _VTp, Cmp_Fn, _Alloc, false >::typeCompare plus entry
oC__gnu_pbds::detail::entry_cmp< _VTp, Cmp_Fn, _Alloc, true >Specialization, true
oC__gnu_pbds::detail::entry_pred< _VTp, Pred, _Alloc, false >Specialization, false
oC__gnu_pbds::detail::entry_pred< _VTp, Pred, _Alloc, true >Specialization, true
oC__gnu_pbds::detail::eq_by_less< Key, Cmp_Fn >Equivalence function
oC__gnu_pbds::detail::hash_eq_fn< Key, Eq_Fn, _Alloc, false >Specialization 1 - The client requests that hash values not be stored
oC__gnu_pbds::detail::hash_eq_fn< Key, Eq_Fn, _Alloc, true >Specialization 2 - The client requests that hash values be stored
oC__gnu_pbds::detail::hash_load_check_resize_trigger_size_base< Size_Type, true >Specializations
oC__gnu_pbds::detail::left_child_next_sibling_heap< Value_Type, Cmp_Fn, Node_Metadata, _Alloc >Base class for a basic heap
oC__gnu_pbds::detail::left_child_next_sibling_heap_node_< _Value, _Metadata, _Alloc >Node
oC__gnu_pbds::detail::left_child_next_sibling_heap_node_point_const_iterator_< Node, _Alloc >Const point-type iterator
oC__gnu_pbds::detail::lu_counter_metadata< Size_Type >A list-update metadata type that moves elements to the front of the list based on the counter algorithm
oC__gnu_pbds::detail::lu_counter_policy_base< Size_Type >Base class for list-update counter policy
oC__gnu_pbds::detail::mask_based_range_hashing< Size_Type >Range hashing policy
oC__gnu_pbds::detail::mod_based_range_hashing< Size_Type >Mod based range hashing
oC__gnu_pbds::detail::no_throw_copies< Key, Mapped >Primary template
oC__gnu_pbds::detail::no_throw_copies< Key, null_type >Specialization
oC__gnu_pbds::detail::ov_tree_map< Key, Mapped, Cmp_Fn, Node_And_It_Traits, _Alloc >::cond_dtor< Size_Type >Conditional destructor
oC__gnu_pbds::detail::ov_tree_node_const_it_< Value_Type, Metadata_Type, _Alloc >Const node reference
oC__gnu_pbds::detail::pat_trie_baseBase type for PATRICIA trees
oC__gnu_pbds::detail::pat_trie_base::_CIter< Node, Leaf, Head, Inode, Is_Forward_Iterator >Const iterator
oC__gnu_pbds::detail::pat_trie_base::_Inode< _ATraits, Metadata >::const_iteratorConstant child iterator
oC__gnu_pbds::detail::pat_trie_base::_Metadata< Metadata, _Alloc >Metadata base primary template
oC__gnu_pbds::detail::pat_trie_base::_Metadata< null_type, _Alloc >Specialization for null metadata
oC__gnu_pbds::detail::pat_trie_base::_Node_base< _ATraits, Metadata >Node base
oC__gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >Node const iterator
oC__gnu_pbds::detail::probe_fn_base< _Alloc >Probe functor base
oC__gnu_pbds::detail::ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, false >
oC__gnu_pbds::detail::ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, true >
oC__gnu_pbds::detail::ranged_hash_fn< Key, null_type, _Alloc, Comb_Hash_Fn, false >
oC__gnu_pbds::detail::ranged_hash_fn< Key, null_type, _Alloc, Comb_Hash_Fn, true >
oC__gnu_pbds::detail::ranged_probe_fn< Key, Hash_Fn, _Alloc, Comb_Probe_Fn, Probe_Fn, false >
oC__gnu_pbds::detail::ranged_probe_fn< Key, Hash_Fn, _Alloc, Comb_Probe_Fn, Probe_Fn, true >
oC__gnu_pbds::detail::ranged_probe_fn< Key, null_type, _Alloc, Comb_Probe_Fn, null_type, false >
oC__gnu_pbds::detail::rb_tree_map< Key, Mapped, Cmp_Fn, Node_And_It_Traits, _Alloc >Red-Black tree.This implementation uses an idea from the SGI STL (using a header node which is needed for efficient iteration)
oC__gnu_pbds::detail::rb_tree_node_< Value_Type, Metadata, _Alloc >Node for Red-Black trees
oC__gnu_pbds::detail::rc< _Node, _Alloc >Redundant binary counter
oC__gnu_pbds::detail::resize_policy< _Tp >Resize policy for binary heap
oC__gnu_pbds::detail::splay_tree_map< Key, Mapped, Cmp_Fn, Node_And_It_Traits, _Alloc >Splay tree
oC__gnu_pbds::detail::splay_tree_node_< Value_Type, Metadata, _Alloc >Node for splay tree
oC__gnu_pbds::detail::stored_hash< _Th >Stored hash
oC__gnu_pbds::detail::stored_value< _Tv >Stored value
oC__gnu_pbds::detail::synth_access_traits< Type_Traits, Set, _ATraits >Synthetic element access traits
oC__gnu_pbds::detail::tree_metadata_helper< Node_Update, false >Specialization, false
oC__gnu_pbds::detail::tree_metadata_helper< Node_Update, true >Specialization, true
oC__gnu_pbds::detail::tree_node_metadata_dispatch< Key, Data, Cmp_Fn, Node_Update, _Alloc >Tree node metadata dispatch
oC__gnu_pbds::detail::tree_traits< Key, Mapped, Cmp_Fn, Node_Update, ov_tree_tag, _Alloc >Tree traits
oC__gnu_pbds::detail::tree_traits< Key, null_type, Cmp_Fn, Node_Update, ov_tree_tag, _Alloc >Specialization
oC__gnu_pbds::detail::trie_metadata_helper< Node_Update, false >Specialization, false
oC__gnu_pbds::detail::trie_metadata_helper< Node_Update, true >Specialization, true
oC__gnu_pbds::detail::trie_node_metadata_dispatch< Key, Data, Cmp_Fn, Node_Update, _Alloc >Trie node metadata dispatch
oC__gnu_pbds::detail::trie_traits< Key, Mapped, _ATraits, Node_Update, pat_trie_tag, _Alloc >Specialization
oC__gnu_pbds::detail::trie_traits< Key, null_type, _ATraits, Node_Update, pat_trie_tag, _Alloc >Specialization
oC__gnu_pbds::detail::type_base< Key, Mapped, _Alloc, false >
oC__gnu_pbds::detail::type_base< Key, Mapped, _Alloc, true >
oC__gnu_pbds::detail::type_base< Key, null_type, _Alloc, false >
oC__gnu_pbds::detail::type_base< Key, null_type, _Alloc, true >
oC__gnu_pbds::detail::type_dispatch< Key, Mapped, _Alloc, Store_Hash >Type base dispatch
oC__gnu_pbds::detail::types_traits< Key, Mapped, _Alloc, Store_Hash >Traits for abstract types
oC__gnu_pbds::hash_exponential_size_policy< Size_Type >A size policy whose sequence of sizes form an exponential sequence (typically powers of 2
oC__gnu_pbds::hash_load_check_resize_trigger< External_Load_Access, Size_Type >A resize trigger policy based on a load check. It keeps the load factor between some load factors load_min and load_max
oC__gnu_pbds::hash_prime_size_policyA size policy whose sequence of sizes form a nearly-exponential sequence of primes
oC__gnu_pbds::hash_standard_resize_policy< Size_Policy, Trigger_Policy, External_Size_Access, Size_Type >A resize policy which delegates operations to size and trigger policies
oC__gnu_pbds::linear_probe_fn< Size_Type >A probe sequence policy using fixed increments
oC__gnu_pbds::list_update< Key, Mapped, Eq_Fn, Update_Policy, _Alloc >
oC__gnu_pbds::lu_move_to_front_policy< _Alloc >
oC__gnu_pbds::null_typeRepresents no type, or absence of type, for template tricks
oC__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >
oC__gnu_pbds::quadratic_probe_fn< Size_Type >A probe sequence policy using square increments
oC__gnu_pbds::sample_probe_fnA sample probe policy
oC__gnu_pbds::sample_range_hashingA sample range-hashing functor
oC__gnu_pbds::sample_ranged_hash_fnA sample ranged-hash functor
oC__gnu_pbds::sample_ranged_probe_fnA sample ranged-probe functor
oC__gnu_pbds::sample_resize_policyA sample resize policy
oC__gnu_pbds::sample_resize_triggerA sample resize trigger policy
oC__gnu_pbds::sample_size_policyA sample size policy
oC__gnu_pbds::sample_tree_node_update< Const_Node_Iter, Node_Iter, Cmp_Fn, _Alloc >A sample node updator
oC__gnu_pbds::sample_trie_access_traitsA sample trie element access traits
oC__gnu_pbds::sample_trie_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >A sample node updator
oC__gnu_pbds::sample_update_policyA sample list-update policy
oC__gnu_pbds::trie_string_access_traits< String, Min_E_Val, Max_E_Val, Reverse, _Alloc >
oC__gnu_pbds::trivial_iterator_tagA trivial iterator tag. Signifies that the iterators has none of std::iterators's movement abilities
oC__gnu_profile::__object_info_baseBase class for a line in the object table
oC__gnu_profile::__reentrance_guardReentrance guard
oC__gnu_profile::__stack_hashHash function for summary trace using call stack as index
oC__gnu_profile::__stack_info_base< __object_info >Base class for a line in the stack table
oC__gnu_profile::__trace_base< __object_info, __stack_info >Base class for all trace producers
oC__gnu_profile::__warning_dataRepresentation of a warning
oC__gnu_profile::__trace_base< __container_size_info, __container_size_stack_info >
oC__gnu_profile::__trace_base< __hashfunc_info, __hashfunc_stack_info >
oC__gnu_profile::__trace_base< __list2slist_info, __list2slist_stack_info >
oC__gnu_profile::__trace_base< __list2vector_info, __list2vector_stack_info >
oC__gnu_profile::__trace_base< __map2umap_info, __map2umap_stack_info >
oC__gnu_profile::__trace_base< __vector2list_info, __vector2list_stack_info >
oCstd::_Hashtable< _Key, std::pair< const _Key, _Tp >, _Alloc, std::_Select1st< std::pair< const _Key, _Tp > >, _Pred, _Hash, __detail::_Mod_range_hashing, __detail::_Default_ranged_hash, __detail::_Prime_rehash_policy, __cache_hash_code, false, false >
oCstd::_Hashtable< _Key, std::pair< const _Key, _Tp >, _Alloc, std::_Select1st< std::pair< const _Key, _Tp > >, _Pred, _Hash, __detail::_Mod_range_hashing, __detail::_Default_ranged_hash, __detail::_Prime_rehash_policy, __cache_hash_code, false, true >
oCstd::_Hashtable< _Value, _Value, _Alloc, std::_Identity< _Value >, _Pred, _Hash, __detail::_Mod_range_hashing, __detail::_Default_ranged_hash, __detail::_Prime_rehash_policy, __cache_hash_code, true, false >
oCstd::_Hashtable< _Value, _Value, _Alloc, std::_Identity< _Value >, _Pred, _Hash, __detail::_Mod_range_hashing, __detail::_Default_ranged_hash, __detail::_Prime_rehash_policy, __cache_hash_code, true, true >
oCstd::_Maybe_get_result_type< __has_result_type< _Functor >::value, _Functor >
oCstd::_Maybe_get_result_type< __has_result_type< remove_cv< _Functor >::type >::value, remove_cv< _Functor >::type >
oCstd::_Maybe_get_result_type< __has_result_type< remove_cv< _Tp >::type >::value, remove_cv< _Tp >::type >
oCstd::_Maybe_unary_or_binary_function< _Res, _ArgTypes...>
oCstd::_Maybe_unary_or_binary_function< _Res, _Class *, _ArgTypes...>
oCstd::_Maybe_unary_or_binary_function< _Res, const _Class *, _ArgTypes...>
oCstd::_Maybe_unary_or_binary_function< _Res, const volatile _Class *, _ArgTypes...>
oCstd::_Maybe_unary_or_binary_function< _Res, volatile _Class *, _ArgTypes...>
oCstd::_Reference_wrapper_base< remove_cv< _Tp >::type >
oCstd::_Safe_tuple_element_impl< __i, _Tuple,(__i< tuple_size< _Tuple >::value)>
oCstd::_Vector_base< _State, std::allocator< _State > >
oCstd::_Vector_base< sub_match< _Bi_iter >, _Allocator >
oCstd::allocator< value_type >
oC__gnu_pbds::basic_branch< Key, Mapped, Tag, detail::tree_traits< Key, Mapped, Cmp_Fn, Node_Update, Tag, _Alloc >::node_update, __gnu_cxx::typelist::create2< Cmp_Fn, detail::tree_traits< Key, Mapped, Cmp_Fn, Node_Update, Tag, _Alloc > >::type, _Alloc >
oC__gnu_pbds::basic_branch< Key, Mapped, Tag, detail::trie_traits< Key, Mapped, _ATraits, Node_Update, Tag, _Alloc >::node_update, __gnu_cxx::typelist::create2< _ATraits, detail::trie_traits< Key, Mapped, _ATraits, Node_Update, Tag, _Alloc > >::type, _Alloc >
oC__gnu_pbds::basic_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Resize_Policy, Store_Hash, cc_hash_tag, __gnu_cxx::typelist::create1< Comb_Hash_Fn >::type, _Alloc >
oC__gnu_pbds::basic_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Resize_Policy, Store_Hash, gp_hash_tag, __gnu_cxx::typelist::create2< Comb_Probe_Fn, Probe_Fn >::type, _Alloc >
oCstd::basic_streambuf< _CharT, encoding_char_traits< _CharT > >
oCstd::basic_streambuf< char, _Traits >
oCstd::basic_streambuf< char, char_traits< char > >
oCstd::basic_string< _CharT, _Traits, _Allocator >
oC__gnu_pbds::detail::bin_search_tree_traits< Key, Mapped, Cmp_Fn, Node_Update, rb_tree_node_< types_traits< Key, Mapped, _Alloc, false >::value_type, tree_node_metadata_dispatch< Key, Mapped, Cmp_Fn, Node_Update, _Alloc >::type, _Alloc >, _Alloc >
oC__gnu_pbds::detail::bin_search_tree_traits< Key, Mapped, Cmp_Fn, Node_Update, splay_tree_node_< types_traits< Key, Mapped, _Alloc, false >::value_type, tree_node_metadata_dispatch< Key, Mapped, Cmp_Fn, Node_Update, _Alloc >::type, _Alloc >, _Alloc >
oC__gnu_pbds::detail::bin_search_tree_traits< Key, null_type, Cmp_Fn, Node_Update, rb_tree_node_< types_traits< Key, null_type, _Alloc, false >::value_type, tree_node_metadata_dispatch< Key, null_type, Cmp_Fn, Node_Update, _Alloc >::type, _Alloc >, _Alloc >
oC__gnu_pbds::detail::bin_search_tree_traits< Key, null_type, Cmp_Fn, Node_Update, splay_tree_node_< types_traits< Key, null_type, _Alloc, false >::value_type, tree_node_metadata_dispatch< Key, null_type, Cmp_Fn, Node_Update, _Alloc >::type, _Alloc >, _Alloc >
oCstd::binary_function< __shared_ptr< _Tp, _Lp >, __shared_ptr< _Tp, _Lp >, bool >
oCstd::binary_function< __weak_ptr< _Tp, _Lp >, __weak_ptr< _Tp, _Lp >, bool >
oCstd::binary_function< _Arg1, _Arg2, _Arg1 >
oCstd::binary_function< _Arg1, _Arg2, _Arg2 >
oCstd::binary_function< _Predicate::first_argument_type, _Predicate::second_argument_type, bool >
oCstd::binary_function< _Sp, _Sp, bool >
oCstd::binary_function< _T1 *, _T2, _Res >
oCstd::binary_function< _T1, _T2, _Res >
oCstd::binary_function< _T1, _T2, bool >
oCstd::binary_function< _Tp *, _Arg, _Ret >
oCstd::binary_function< _Tp, _Arg, _Ret >
oCstd::binary_function< _Tp, _Tp, _Tp >
oCstd::binary_function< _Tp, _Tp, bool >
oCstd::binary_function< _Tp1, _Tp2, _Result >
oCstd::binary_function< const _T1 *, _T2, _Res >
oCstd::binary_function< const _Tp *, _Arg, _Ret >
oCstd::binary_function< const volatile _T1 *, _T2, _Res >
oCstd::binary_function< rope< _CharT, _Alloc >, rope< _CharT, _Alloc >, rope< _CharT, _Alloc > >
oCstd::binary_function< shared_ptr< _Tp >, shared_ptr< _Tp >, bool >
oCstd::binary_function< std::pair< _T1, _T2 >, std::pair< _T1, _T2 >, bool >
oCstd::binary_function< value_type, value_type, bool >
oCstd::binary_function< volatile _T1 *, _T2, _Res >
oCstd::binary_function< weak_ptr< _Tp >, weak_ptr< _Tp >, bool >
oCstd::enable_if< is_void< _Res >::value, int >
oCstd::enable_if<!is_void< _Res >::value, int >
oCstd::integral_constant< bool, __big_less< _Left::__hi, _Left::__lo, _Right::__hi, _Right::__lo >::value >
oCstd::integral_constant< bool, __has_allocator_type_helper< remove_cv< _Tp >::type >::value >
oCstd::integral_constant< bool, __has_argument_type_helper< remove_cv< _Tp >::type >::value >
oCstd::integral_constant< bool, __has_difference_type_helper< remove_cv< _Tp >::type >::value >
oCstd::integral_constant< bool, __has_element_type_helper< remove_cv< _Tp >::type >::value >
oCstd::integral_constant< bool, __has_first_argument_type_helper< remove_cv< _Tp >::type >::value >
oCstd::integral_constant< bool, __has_iterator_category_helper< remove_cv< _Tp >::type >::value >
oCstd::integral_constant< bool, __has_result_type_helper< remove_cv< _Tp >::type >::value >
oCstd::integral_constant< bool, __has_second_argument_type_helper< remove_cv< _Tp >::type >::value >
oCstd::integral_constant< bool, __has_trivial_assign(_Tp)>
oCstd::integral_constant< bool, __has_trivial_constructor(_Tp)>
oCstd::integral_constant< bool, __has_trivial_copy(_Tp)>
oCstd::integral_constant< bool, __has_trivial_destructor(_Tp)>
oCstd::integral_constant< bool, __has_virtual_destructor(_Tp)>
oCstd::integral_constant< bool, __is_abstract(_Tp)>
oCstd::integral_constant< bool, __is_assignable_helper< _Tp &, _Tp && >::value >
oCstd::integral_constant< bool, __is_assignable_helper< _Tp &, const _Tp & >::value >
oCstd::integral_constant< bool, __is_assignable_helper< _Tp, _Up >::value >
oCstd::integral_constant< bool, __is_base_of(_Base, _Derived)>
oCstd::integral_constant< bool, __is_class(_Tp)>
oCstd::integral_constant< bool, __is_convertible_helper< _From, _To >::value >
oCstd::integral_constant< bool, __is_empty(_Tp)>
oCstd::integral_constant< bool, __is_enum(_Tp)>
oCstd::integral_constant< bool, __is_literal_type(_Tp)>
oCstd::integral_constant< bool, __is_pod(_Tp)>
oCstd::integral_constant< bool, __is_polymorphic(_Tp)>
oCstd::integral_constant< bool, __is_signed_helper< _Tp >::value >
oCstd::integral_constant< bool, __is_standard_layout(_Tp)>
oCstd::integral_constant< bool, __is_trivial(_Tp)>
oCstd::integral_constant< bool, __is_union(_Tp)>
oCstd::integral_constant< bool, __uses_allocator_helper< _Tp, _Alloc >::value >
oCstd::integral_constant< bool, _R1::num==_R2::num &&_R1::den==_R2::den >
oCstd::integral_constant< bool, is_convertible< _Alloc, _Tp::allocator_type >::value >
oCstd::integral_constant< bool, is_function< _Tp >::value >
oCstd::integral_constant< bool, noexcept(_Tp())>
oCstd::integral_constant< bool, noexcept(_Tp(declval< _Args >()...))>
oCstd::integral_constant< bool, noexcept(declval< _Tp >()=declval< _Up >())>
oCstd::integral_constant< bool, noexcept(declval< const _Hash & >()(declval< const _Key & >()))>
oCstd::integral_constant< bool, noexcept(static_cast< _Tp >(declval< _Arg >()))>
oCstd::integral_constant< bool, static_cast< bool >(_Tp(-1)< _Tp(0))>
oCstd::integral_constant< bool, std::is_same< pointer, _Ptr >::value &&!std::is_pointer< _Ptr >::value >
oCstd::integral_constant< bool,!_Pp::value >
oCstd::integral_constant< bool,!is_function< _Tp >::value >
oCstd::integral_constant< bool,!is_fundamental< _Tp >::value >
oCstd::integral_constant< bool,!ratio_equal< _R1, _R2 >::value >
oCstd::integral_constant< bool,(__hi1< __hi2||(__hi1==__hi2 &&__lo1< __lo2))>
oCstd::integral_constant< bool,(__is_constructible_impl< _To, _Args...>::value)>
oCstd::integral_constant< bool,(__is_constructible_impl< _Tp, _Args...>::value)>
oCstd::integral_constant< bool,(__is_default_constructible_safe< _Tp >::value)>
oCstd::integral_constant< bool,(__is_destructible_safe< _Tp >::value)>
oCstd::integral_constant< bool,(__is_direct_constructible_new< _Tp, _Arg >::value)>
oCstd::integral_constant< bool,(__is_floating_point_helper< remove_cv< _Rep >::type >::value)>
oCstd::integral_constant< bool,(__is_floating_point_helper< remove_cv< _Tp >::type >::value)>
oCstd::integral_constant< bool,(__is_integral_helper< remove_cv< _Tp >::type >::value)>
oCstd::integral_constant< bool,(__is_member_function_pointer_helper< remove_cv< _Tp >::type >::value)>
oCstd::integral_constant< bool,(__is_member_object_pointer_helper< remove_cv< _Tp >::type >::value)>
oCstd::integral_constant< bool,(__is_member_pointer_helper< remove_cv< _Tp >::type >::value)>
oCstd::integral_constant< bool,(__is_nullptr_t_helper< remove_cv< _Tp >::type >::value)>
oCstd::integral_constant< bool,(__is_pointer_helper< remove_cv< _Tp >::type >::value)>
oCstd::integral_constant< bool,(__is_static_castable_safe< _From, _To >::value)>
oCstd::integral_constant< bool,(__is_void_helper< remove_cv< _Tp >::type >::value)>
oCstd::value > 0)>
oCstd::integral_constant< bool,(is_pointer< _Tp >::value||is_member_pointer< _Tp >::value)>
oCstd::integral_constant< int, 0 >
oCstd::integral_constant< int, _Num >
oCstd::integral_constant< intmax_t, __static_abs< _Pn >::value >
oCstd::integral_constant< intmax_t, __static_abs< _Qn >::value >
oCstd::integral_constant< intmax_t, _Pn *__static_sign< _Pn >::value >
oCstd::integral_constant< intmax_t,(_Pn< 0)?-1:1 >
oCstd::integral_constant< remove_cv< decltype(tuple_size< _Tp >::value)>::type, tuple_size< _Tp >::value >
oCstd::integral_constant< std::size_t, 0 >
oCstd::integral_constant< std::size_t, 1+rank< _Tp >::value >
oCstd::integral_constant< std::size_t, 2 >
oCstd::integral_constant< std::size_t, __alignof__(_Tp)>
oCstd::integral_constant< std::size_t, _Nm >
oCstd::integral_constant< std::size_t, _Uint==0?0:extent< _Tp, _Uint-1 >::value >
oCstd::integral_constant< std::size_t, _Uint==0?_Size:extent< _Tp, _Uint-1 >::value >
oCstd::integral_constant< std::size_t, sizeof...(_Elements)>
oCstd::is_nothrow_assignable< _Tp &, _Tp && >
oCstd::is_nothrow_assignable< _Tp &, const _Tp & >
oCstd::is_nothrow_constructible< _Tp, _Tp && >
oCstd::is_nothrow_constructible< _Tp, const _Tp & >
oCstd::iterator< input_iterator_tag, _CharT, _Traits::off_type, _CharT *, _CharT >
oCstd::iterator< input_iterator_tag, _Tp, _Dist, const _Tp *, const _Tp & >
oCstd::iterator< iterator_traits< _Iterator >::iterator_category, iterator_traits< _Iterator >::value_type, iterator_traits< _Iterator >::difference_type, iterator_traits< _Iterator >::pointer, iterator_traits< _Iterator >::reference >
oCstd::iterator< output_iterator_tag, void, void, void, void >
oCstd::iterator< std::output_iterator_tag, void, void, void, void >
oCstd::iterator< std::random_access_iterator_tag, _CharT >
oCstd::iterator< std::random_access_iterator_tag, bool >
oC__gnu_pbds::detail::left_child_next_sibling_heap< Value_Type, Cmp_Fn, _Alloc::size_type, _Alloc >
oC__gnu_pbds::detail::left_child_next_sibling_heap< Value_Type, Cmp_Fn, null_type, _Alloc >
oC__gnu_pbds::detail::lu_counter_policy_base< _Alloc::size_type >
oCstd::pair< _BiIter, _BiIter >
oCstd::pair< _Iterator1, _Iterator2 >
oCpoint_const_iterator_Const point-type iterator
oCpoint_iterator_Find type iterator
oCstd::remove_cv< decltype(tuple_size< _Tp >::value)>
oC__gnu_pbds::detail::resize_policy< _Alloc::size_type >
oCstd::__atomic_base< _ITp >Base class for atomic integrals
oCstd::__atomic_base< _PTp * >Partial specialization for pointer types
oCstd::__atomic_flag_baseBase type for atomic_flag
oCstd::__debug::bitset< _Nb >Class std::bitset with additional safety/checking/debug instrumentation
oCstd::__detail::_List_node_baseCommon part of a node in the list
oCstd::__exception_ptr::exception_ptrAn opaque pointer to an arbitrary exception
oCstd::__has_iterator_category_helper< _Tp >Traits class for iterators
oCstd::__numeric_limits_basePart of std::numeric_limits
oCstd::__parallel::_CRandNumber< _MustBeInt >Functor wrapper for std::rand()
oCstd::__profile::bitset< _Nb >Class std::bitset wrapper with performance instrumentation
oCstd::__profile::deque< _Tp, _Allocator >Class std::deque wrapper with performance instrumentation
oCstd::__profile::forward_list< _Tp, _Alloc >Class std::forward_list wrapper with performance instrumentation
oCstd::__profile::list< _Tp, _Allocator >List wrapper with performance instrumentation
oCstd::__profile::map< _Key, _Tp, _Compare, _Allocator >Class std::map wrapper with performance instrumentation
oCstd::__profile::multimap< _Key, _Tp, _Compare, _Allocator >Class std::multimap wrapper with performance instrumentation
oCstd::__profile::multiset< _Key, _Compare, _Allocator >Class std::multiset wrapper with performance instrumentation
oCstd::__profile::set< _Key, _Compare, _Allocator >Class std::set wrapper with performance instrumentation
oCstd::__profile::unordered_map< _Key, _Tp, _Hash, _Pred, _Alloc >Class std::unordered_map wrapper with performance instrumentation
oCstd::__profile::unordered_multimap< _Key, _Tp, _Hash, _Pred, _Alloc >Class std::unordered_multimap wrapper with performance instrumentation
oCstd::__profile::unordered_multiset< _Value, _Hash, _Pred, _Alloc >Unordered_multiset wrapper with performance instrumentation
oCstd::__profile::unordered_set< _Key, _Hash, _Pred, _Alloc >Unordered_set wrapper with performance instrumentation
oCstd::_Base_bitset< _Nw >
oCstd::_Base_bitset< 0 >
oCstd::_Base_bitset< 1 >
oCstd::_Deque_base< _Tp, _Alloc >
oCstd::_Deque_iterator< _Tp, _Ref, _Ptr >A deque::iterator
oCstd::_Derives_from_binary_function< _Tp >Determines if the type _Tp derives from binary_function
oCstd::_Derives_from_unary_function< _Tp >Determines if the type _Tp derives from unary_function
oCstd::_Function_baseBase class of all polymorphic function object wrappers
oCstd::_Fwd_list_base< _Tp, _Alloc >Base class for forward_list
oCstd::_Fwd_list_const_iterator< _Tp >A forward_list::const_iterator
oCstd::_Fwd_list_iterator< _Tp >A forward_list::iterator
oCstd::_Fwd_list_node_baseA helper basic node class for forward_list. This is just a linked list with nothing inside it. There are purely list shuffling utility methods here
oCstd::_Hashtable< _Key, _Value, _Allocator, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, __cache_hash_code, __constant_iterators, __unique_keys >
oCstd::_List_base< _Tp, _Alloc >See bits/stl_deque.h's _Deque_base for an explanation
oCstd::_List_const_iterator< _Tp >A list::const_iterator
oCstd::_List_iterator< _Tp >A list::iterator
oCstd::_Maybe_get_result_type< _Has_result_type, _Functor >If we have found a result_type, extract it
oCstd::_Maybe_unary_or_binary_function< _Res, _ArgTypes >
oCstd::_Maybe_wrap_member_pointer< _Tp >
oCstd::_Maybe_wrap_member_pointer< _Tp _Class::* >
oCstd::_Mu< _Arg, false, false >
oCstd::_Mu< _Arg, false, true >
oCstd::_Mu< _Arg, true, false >
oCstd::_Mu< reference_wrapper< _Tp >, false, false >
oCstd::_Placeholder< _Num >The type of placeholder objects defined by libstdc++
oCstd::_Reference_wrapper_base< _Tp >
oCstd::_Safe_tuple_element_impl< __i, _Tuple, _IsSafe >
oCstd::_Safe_tuple_element_impl< __i, _Tuple, false >
oCstd::_Temporary_buffer< _ForwardIterator, _Tp >
oCstd::_Tuple_impl< _Idx >
oCstd::_Tuple_impl< _Idx, _Head, _Tail...>
oCstd::_Vector_base< _Tp, _Alloc >See bits/stl_deque.h's _Deque_base for an explanation
oCstd::_Weak_result_type_impl< _Res(&)(_ArgTypes...)>Retrieve the result type for a function reference
oCstd::_Weak_result_type_impl< _Res(*)(_ArgTypes...)>Retrieve the result type for a function pointer
oCstd::_Weak_result_type_impl< _Res(_ArgTypes...)>Retrieve the result type for a function type
oCstd::_Weak_result_type_impl< _Res(_Class::*)(_ArgTypes...) const >Retrieve result type for a const member function pointer
oCstd::_Weak_result_type_impl< _Res(_Class::*)(_ArgTypes...) const volatile >Retrieve result type for a const volatile member function pointer
oCstd::_Weak_result_type_impl< _Res(_Class::*)(_ArgTypes...) volatile >Retrieve result type for a volatile member function pointer
oCstd::_Weak_result_type_impl< _Res(_Class::*)(_ArgTypes...)>Retrieve result type for a member function pointer
oCstd::add_const< _Tp >Add_const
oCstd::add_cv< _Tp >Add_cv
oCstd::add_lvalue_reference< _Tp >Add_lvalue_reference
oCstd::add_pointer< _Tp >Add_pointer
oCstd::add_rvalue_reference< _Tp >Add_rvalue_reference
oCstd::add_volatile< _Tp >Add_volatile
oCstd::adopt_lock_tAssume the calling thread has already obtained mutex ownership and manage it
oCstd::aligned_storage< _Len, _Align >Alignment type
oCstd::allocator< _Tp >The standard allocator, as per [20.4]
oCstd::allocator< void >Allocator<void> specialization
oCstd::allocator_arg_t[allocator.tag]
oCstd::allocator_traits< _Alloc >Uniform interface to all allocator types
oCstd::array< _Tp, _Nm >A standard container for storing a fixed size sequence of elements
oCstd::atomic< _Tp >Atomic 29.4.3, Generic atomic type, primary class template
oCstd::atomic< _Tp * >Partial specialization for pointer types
oCstd::atomic_boolAtomic_bool
oCstd::auto_ptr< _Tp >A simple smart pointer providing strict ownership semantics
oCstd::auto_ptr_ref< _Tp1 >
oCstd::basic_istream< _CharT, _Traits >::sentryPerforms setup work for input streams
oCstd::basic_ostream< _CharT, _Traits >::sentryPerforms setup work for output streams
oCstd::basic_regex< _Ch_type, _Rx_traits >
oCstd::basic_streambuf< _CharT, _Traits >The actual work of input and output (interface).This is a base class. Derived stream buffers each control a pair of character sequences: one for input, and one for output
oCstd::basic_string< _CharT, _Traits, _Alloc >Managing sequences of characters and character-like objects
oCstd::bernoulli_distributionA Bernoulli random number distribution
oCstd::bernoulli_distribution::param_type
oCstd::binary_function< _Arg1, _Arg2, _Result >
oCstd::binomial_distribution< _IntType >A discrete binomial random number distribution
oCstd::binomial_distribution< _IntType >::param_type
oCstd::cauchy_distribution< _RealType >A cauchy_distribution random number distribution
oCstd::cauchy_distribution< _RealType >::param_type
oCstd::char_traits< __gnu_cxx::character< V, I, S > >Char_traits<__gnu_cxx::character> specialization
oCstd::char_traits< char >21.1.3.1 char_traits specializations
oCstd::char_traits< wchar_t >21.1.3.2 char_traits specializations
oCstd::chi_squared_distribution< _RealType >A chi_squared_distribution random number distribution
oCstd::chi_squared_distribution< _RealType >::param_type
oCstd::chrono::duration< _Rep, _Period >Duration
oCstd::chrono::duration_values< _Rep >Duration_values
oCstd::chrono::system_clockSystem_clock
oCstd::chrono::time_point< _Clock, _Dur >Time_point
oCstd::codecvt_baseEmpty base class for codecvt facet [22.2.1.5]
oCstd::complex< _Tp >
oCstd::complex< double >26.2.3 complex specializations complex<double> specialization
oCstd::complex< float >26.2.3 complex specializations complex<float> specialization
oCstd::complex< long double >26.2.3 complex specializations complex<long double> specialization
oCstd::condition_variableCondition_variable
oCstd::condition_variable_anyCondition_variable_any
oCstd::conditional< _Cond, _Iftrue, _Iffalse >Define a member typedef type to one of two argument types
oCstd::ctype_baseBase class for ctype
oCstd::decay< _Tp >Decay
oCstd::decimal::decimal1283.2.4 Class decimal128
oCstd::decimal::decimal323.2.2 Class decimal32
oCstd::decimal::decimal643.2.3 Class decimal64
oCstd::default_delete< _Tp >Primary template, default_delete
oCstd::default_delete< _Tp[]>Specialization, default_delete
oCstd::defer_lock_tDo not acquire ownership of the mutex
oCstd::discard_block_engine< _RandomNumberEngine, __p, __r >
oCstd::discrete_distribution< _IntType >A discrete_distribution random number distribution
oCstd::discrete_distribution< _IntType >::param_type
oCstd::enable_if< bool, _Tp >Define a member typedef type only if a boolean constant is true
oCstd::enable_shared_from_this< _Tp >Base class allowing use of member function shared_from_this
oCstd::error_categoryError_category
oCstd::error_codeError_code
oCstd::error_conditionError_condition
oCstd::exceptionBase class for all library exceptions
oCstd::exponential_distribution< _RealType >An exponential continuous distribution for random numbers
oCstd::exponential_distribution< _RealType >::param_type
oCstd::extreme_value_distribution< _RealType >A extreme_value_distribution random number distribution
oCstd::extreme_value_distribution< _RealType >::param_type
oCstd::fisher_f_distribution< _RealType >A fisher_f_distribution random number distribution
oCstd::fisher_f_distribution< _RealType >::param_type
oCstd::fpos< _StateT >Class representing stream positions
oCstd::gamma_distribution< _RealType >A gamma continuous distribution for random numbers
oCstd::gamma_distribution< _RealType >::param_type
oCstd::geometric_distribution< _IntType >A discrete geometric random number distribution
oCstd::geometric_distribution< _IntType >::param_type
oCstd::gsliceClass defining multi-dimensional subset of an array
oCstd::gslice_array< _Tp >Reference to multi-dimensional subset of an array
oCstd::hash< _Tp >Primary class template hash
oCstd::hash< __debug::bitset< _Nb > >Std::hash specialization for bitset
oCstd::hash< __debug::vector< bool, _Alloc > >Std::hash specialization for vector<bool>
oCstd::hash< __gnu_cxx::__u16vstring >Std::hash specialization for __u16vstring
oCstd::hash< __gnu_cxx::__u32vstring >Std::hash specialization for __u32vstring
oCstd::hash< __gnu_cxx::__vstring >Std::hash specialization for __vstring
oCstd::hash< __gnu_cxx::__wvstring >Std::hash specialization for __wvstring
oCstd::hash< __profile::bitset< _Nb > >Std::hash specialization for bitset
oCstd::hash< __profile::vector< bool, _Alloc > >Std::hash specialization for vector<bool>
oCstd::hash< __shared_ptr< _Tp, _Lp > >Std::hash specialization for __shared_ptr
oCstd::hash< _Tp * >Partial specializations for pointer types
oCstd::hash< bool >Explicit specialization for bool
oCstd::hash< char >Explicit specialization for char
oCstd::hash< char16_t >Explicit specialization for char16_t
oCstd::hash< char32_t >Explicit specialization for char32_t
oCstd::hash< double >Specialization for double
oCstd::hash< error_code >Std::hash specialization for error_code
oCstd::hash< float >Specialization for float
oCstd::hash< int >Explicit specialization for int
oCstd::hash< long >Explicit specialization for long
oCstd::hash< long double >Specialization for long double
oCstd::hash< long long >Explicit specialization for long long
oCstd::hash< shared_ptr< _Tp > >Std::hash specialization for shared_ptr
oCstd::hash< short >Explicit specialization for short
oCstd::hash< signed char >Explicit specialization for signed char
oCstd::hash< string >Std::hash specialization for string
oCstd::hash< thread::id >Std::hash specialization for thread::id
oCstd::hash< type_index >Std::hash specialization for type_index
oCstd::hash< u16string >Std::hash specialization for u16string
oCstd::hash< u32string >Std::hash specialization for u32string
oCstd::hash< unique_ptr< _Tp, _Dp > >Std::hash specialization for unique_ptr
oCstd::hash< unsigned char >Explicit specialization for unsigned char
oCstd::hash< unsigned int >Explicit specialization for unsigned int
oCstd::hash< unsigned long >Explicit specialization for unsigned long
oCstd::hash< unsigned long long >Explicit specialization for unsigned long long
oCstd::hash< unsigned short >Explicit specialization for unsigned short
oCstd::hash< wchar_t >Explicit specialization for wchar_t
oCstd::hash< wstring >Std::hash specialization for wstring
oCstd::hash<::bitset< _Nb > >Std::hash specialization for bitset
oCstd::hash<::vector< bool, _Alloc > >Std::hash specialization for vector<bool>
oCstd::independent_bits_engine< _RandomNumberEngine, __w, _UIntType >
oCstd::indirect_array< _Tp >Reference to arbitrary subset of an array
oCstd::initializer_list< _E >Initializer_list
oCstd::input_iterator_tagMarking input iterators
oCstd::integral_constant< _Tp, __v >Integral_constant
oCstd::ios_baseThe base of the I/O class hierarchy.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 people will only see ios_base when they need to specify the full name of the various I/O flags (e.g., the openmodes)
oCstd::is_arithmetic< _Tp >Is_arithmetic
oCstd::is_copy_assignable< _Tp >Is_copy_assignable
oCstd::is_copy_constructible< _Tp >Is_copy_constructible
oCstd::is_fundamental< _Tp >Is_fundamental
oCstd::is_move_assignable< _Tp >Is_move_assignable
oCstd::is_move_constructible< _Tp >Is_move_constructible
oCstd::is_nothrow_assignable< _Tp, _Up >Is_nothrow_assignable
oCstd::is_nothrow_constructible< _Tp, _Args >Is_nothrow_constructible
oCstd::is_nothrow_copy_assignable< _Tp >Is_nothrow_copy_assignable
oCstd::is_nothrow_copy_constructible< _Tp >Is_nothrow_copy_constructible
oCstd::is_nothrow_default_constructible< _Tp >Is_nothrow_default_constructible
oCstd::is_nothrow_move_assignable< _Tp >Is_nothrow_move_assignable
oCstd::is_nothrow_move_constructible< _Tp >Is_nothrow_move_constructible
oCstd::is_reference< _Tp >Is_reference
oCstd::is_scalar< _Tp >Is_scalar
oCstd::is_unsigned< _Tp >Is_unsigned
oCstd::iterator< _Category, _Tp, _Distance, _Pointer, _Reference >Common iterator class
oCstd::iterator_traits< _Tp * >Partial specialization for pointer types
oCstd::iterator_traits< const _Tp * >Partial specialization for const pointer types
oCstd::linear_congruential_engine< _UIntType, __a, __c, __m >A model of a linear congruential random number generator
oCstd::localeContainer class for localization functionality.The locale class is first a class wrapper for C library locales. It is also an extensible container for user-defined localization. A locale is a collection of facets that implement various localization features such as money, time, and number printing
oCstd::locale::facetLocalization functionality base class.The facet class is the base class for a localization feature, such as money, time, and number printing. It provides common support for facets and reference management
oCstd::locale::idFacet ID class.The ID class provides facets with an index used to identify them. Every facet class must define a public static member locale::id, or be derived from a facet that provides this member, otherwise the facet cannot be used in a locale. The locale::id ensures that each class type gets a unique identifier
oCstd::lock_guard< _Mutex >Scoped lock idiom
oCstd::lognormal_distribution< _RealType >A lognormal_distribution random number distribution
oCstd::lognormal_distribution< _RealType >::param_type
oCstd::make_signed< _Tp >Make_signed
oCstd::make_unsigned< _Tp >Make_unsigned
oCstd::map< _Key, _Tp, _Compare, _Alloc >A standard container made up of (key,value) pairs, which can be retrieved based on a key, in logarithmic time
oCstd::mask_array< _Tp >Reference to selected subset of an array
oCstd::mersenne_twister_engine< _UIntType, __w, __n, __m, __r, __a, __u, __d, __s, __b, __t, __c, __l, __f >
oCstd::messages_baseMessages facet base class providing catalog typedef
oCstd::money_baseMoney format ordering data.This class contains an ordered array of 4 fields to represent the pattern for formatting a money amount. Each field may contain one entry from the part enum. symbol, sign, and value must be present and the remaining field must contain either none or space
oCstd::move_iterator< _Iterator >
oCstd::multimap< _Key, _Tp, _Compare, _Alloc >A standard container made up of (key,value) pairs, which can be retrieved based on a key, in logarithmic time
oCstd::multiset< _Key, _Compare, _Alloc >A standard container made up of elements, which can be retrieved in logarithmic time
oCstd::mutexMutex
oCstd::negative_binomial_distribution< _IntType >A negative_binomial_distribution random number distribution
oCstd::negative_binomial_distribution< _IntType >::param_type
oCstd::nested_exceptionException class with exception_ptr data member
oCstd::normal_distribution< _RealType >A normal continuous distribution for random numbers
oCstd::normal_distribution< _RealType >::param_type
oCstd::numeric_limits< bool >Numeric_limits<bool> specialization
oCstd::numeric_limits< char >Numeric_limits<char> specialization
oCstd::numeric_limits< char16_t >Numeric_limits<char16_t> specialization
oCstd::numeric_limits< char32_t >Numeric_limits<char32_t> specialization
oCstd::numeric_limits< double >Numeric_limits<double> specialization
oCstd::numeric_limits< float >Numeric_limits<float> specialization
oCstd::numeric_limits< int >Numeric_limits<int> specialization
oCstd::numeric_limits< long >Numeric_limits<long> specialization
oCstd::numeric_limits< long double >Numeric_limits<long double> specialization
oCstd::numeric_limits< long long >Numeric_limits<long long> specialization
oCstd::numeric_limits< short >Numeric_limits<short> specialization
oCstd::numeric_limits< signed char >Numeric_limits<signed char> specialization
oCstd::numeric_limits< unsigned char >Numeric_limits<unsigned char> specialization
oCstd::numeric_limits< unsigned int >Numeric_limits<unsigned int> specialization
oCstd::numeric_limits< unsigned long >Numeric_limits<unsigned long> specialization
oCstd::numeric_limits< unsigned long long >Numeric_limits<unsigned long long> specialization
oCstd::numeric_limits< unsigned short >Numeric_limits<unsigned short> specialization
oCstd::numeric_limits< wchar_t >Numeric_limits<wchar_t> specialization
oCstd::once_flagOnce_flag
oCstd::output_iterator_tagMarking output iterators
oCstd::owner_less< shared_ptr< _Tp > >Partial specialization of owner_less for shared_ptr
oCstd::owner_less< weak_ptr< _Tp > >Partial specialization of owner_less for weak_ptr
oCstd::pair< _T1, _T2 >Struct holding two objects of arbitrary type
oCstd::piecewise_constant_distribution< _RealType >A piecewise_constant_distribution random number distribution
oCstd::piecewise_constant_distribution< _RealType >::param_type
oCstd::piecewise_construct_tPiecewise_construct_t
oCstd::piecewise_linear_distribution< _RealType >A piecewise_linear_distribution random number distribution
oCstd::piecewise_linear_distribution< _RealType >::param_type
oCstd::pointer_traits< _Ptr >Uniform interface to all pointer-like types
oCstd::pointer_traits< _Tp * >Partial specialization for built-in pointers
oCstd::poisson_distribution< _IntType >A discrete Poisson random number distribution
oCstd::poisson_distribution< _IntType >::param_type
oCstd::priority_queue< _Tp, _Sequence, _Compare >A standard container automatically sorting its contents
oCstd::queue< _Tp, _Sequence >A standard container giving FIFO behavior
oCstd::random_device
oCstd::ratio< _Num, _Den >Provides compile-time rational arithmetic
oCstd::ratio_divide< _R1, _R2 >Ratio_divide
oCstd::ratio_multiply< _R1, _R2 >Ratio_multiply
oCstd::recursive_mutexRecursive_mutex
oCstd::regex_iterator< _Bi_iter, _Ch_type, _Rx_traits >
oCstd::regex_token_iterator< _Bi_iter, _Ch_type, _Rx_traits >
oCstd::regex_traits< _Ch_type >Describes aspects of a regular expression
oCstd::remove_all_extents< _Tp >Remove_all_extents
oCstd::remove_const< _Tp >Remove_const
oCstd::remove_cv< _Tp >Remove_cv
oCstd::remove_extent< _Tp >Remove_extent
oCstd::remove_pointer< _Tp >Remove_pointer
oCstd::remove_reference< _Tp >Remove_reference
oCstd::remove_volatile< _Tp >Remove_volatile
oCstd::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >Primary class template
oCstd::seed_seqGenerates sequences of seeds for random number generators
oCstd::set< _Key, _Compare, _Alloc >A standard container made up of unique keys, which can be retrieved in logarithmic time
oCstd::shared_ptr< _Tp >A smart pointer with reference-counted copy semantics
oCstd::shuffle_order_engine< _RandomNumberEngine, __k >Produces random numbers by combining random numbers from some base engine to produce random numbers with a specifies number of bits __w
oCstd::sliceClass defining one-dimensional subset of an array
oCstd::slice_array< _Tp >Reference to one-dimensional subset of an array
oCstd::stack< _Tp, _Sequence >A standard container giving FILO behavior
oCstd::student_t_distribution< _RealType >A student_t_distribution random number distribution
oCstd::student_t_distribution< _RealType >::param_type
oCstd::threadThread
oCstd::thread::idThread::id
oCstd::time_baseTime format ordering data.This class provides an enum representing different orderings of time: day, month, and year
oCstd::tr2::__dynamic_bitset_base< _WordT, _Alloc >
oCstd::tr2::__reflection_typelist< _First, _Rest...>Partial specialization
oCstd::tr2::__reflection_typelist<>Specialization for an empty typelist
oCstd::tr2::bases< _Tp >Sequence abstraction metafunctions for manipulating a typelist
oCstd::tr2::bool_set
oCstd::tr2::direct_bases< _Tp >Enumerate all the direct base classes of a class. Form of a typelist
oCstd::tr2::dynamic_bitset< _WordT, _Alloc >::reference
oCstd::try_to_lock_tTry to acquire ownership of the mutex without blocking
oCstd::tuple< _Elements >Primary class template, tuple
oCstd::tuple< _T1, _T2 >Partial specialization, 2-element tuple. Includes construction and assignment from a pair
oCstd::tuple_element< 0, tuple< _Head, _Tail...> >
oCstd::tuple_element< __i, tuple< _Head, _Tail...> >
oCstd::type_indexThe class type_index provides a simple wrapper for type_info which can be used as an index type in associative containers (23.6) and in unordered associative containers (23.7)
oCstd::type_infoPart of RTTI
oCstd::unary_function< _Arg, _Result >
oCstd::underlying_type< _Tp >The underlying type of an enum
oCstd::uniform_int_distribution< _IntType >Uniform discrete distribution for random numbers. A discrete random distribution on the range $[min, max]$ with equal probability throughout the range
oCstd::uniform_int_distribution< _IntType >::param_type
oCstd::uniform_real_distribution< _RealType >Uniform continuous distribution for random numbers
oCstd::uniform_real_distribution< _RealType >::param_type
oCstd::unique_lock< _Mutex >Unique_lock
oCstd::unique_ptr< _Tp, _Dp >20.7.12.2 unique_ptr for single objects
oCstd::unique_ptr< _Tp[], _Dp >20.7.12.3 unique_ptr for array objects with a runtime length
oCstd::unordered_map< _Key, _Tp, _Hash, _Pred, _Alloc >A standard container composed of unique keys (containing at most one of each key value) that associates values of another type with the keys
oCstd::unordered_multimap< _Key, _Tp, _Hash, _Pred, _Alloc >A standard container composed of equivalent keys (possibly containing multiple of each key value) that associates values of another type with the keys
oCstd::unordered_multiset< _Value, _Hash, _Pred, _Alloc >A standard container composed of equivalent keys (possibly containing multiple of each key value) in which the elements' keys are the elements themselves
oCstd::unordered_set< _Value, _Hash, _Pred, _Alloc >A standard container composed of unique keys (containing at most one of each key value) in which the elements' keys are the elements themselves
oCstd::valarray< _Tp >Smart array designed to support numeric processing
oCstd::vector< bool, _Alloc >A specialization of vector for booleans which offers fixed time access to individual elements in any order
oCstd::weak_ptr< _Tp >A smart pointer with weak semantics
oCstd::weibull_distribution< _RealType >A weibull_distribution random number distribution
oCstd::weibull_distribution< _RealType >::param_type
oC__gnu_pbds::detail::types_traits< Key, Mapped, _Alloc, false >
oCstd::unary_function< __gnu_cxx::throw_value_limit, size_t >
oCstd::unary_function< __gnu_cxx::throw_value_random, size_t >
oCstd::unary_function< _FirstArgumentType, _ResultType >
oCstd::unary_function< _Functor::argument_type, _Functor::result_type >
oCstd::unary_function< _Operation2::argument_type, _Operation1::result_type >
oCstd::unary_function< _Operation::first_argument_type, _Operation::result_type >
oCstd::unary_function< _Operation::second_argument_type, _Operation::result_type >
oCstd::unary_function< _Pair, _Pair::first_type >
oCstd::unary_function< _Pair, _Pair::second_type >
oCstd::unary_function< _Predicate::argument_type, bool >
oCstd::unary_function< _SecondArgumentType, _ResultType >
oCstd::unary_function< _T1 *, _Res >
oCstd::unary_function< _T1, _Res >
oCstd::unary_function< _Tp *, _Ret >
oCstd::unary_function< _Tp, _Ret >
oCstd::unary_function< _Tp, _Tp >
oCstd::unary_function< _Tp, bool >
oCstd::unary_function< argument_type, bool >
oCstd::unary_function< const _T1 *, _Res >
oCstd::unary_function< const _Tp *, _Ret >
oCstd::unary_function< const volatile _T1 *, _Res >
oCstd::unary_function< std::pair< _Tp, _Tp >, bool >
oCstd::unary_function< unsigned int, unsigned int >
oCstd::unary_function< volatile _T1 *, _Res >
oCstd::valarray< _Dom::value_type >
\Cstd::valarray< size_t >