BDE 4.14.0 Production release
Loading...
Searching...
No Matches
Package bslalg

Modules

 bslalg_arraydestructionprimitives
 Provide primitive algorithms that destroy arrays.
 
 bslalg_arrayprimitives
 Provide primitive algorithms that operate on arrays.
 
 bslalg_arrayprimitives_cpp03
 Provide C++03 implementation for bslalg_arrayprimitives.h.
 
 bslalg_autoarraydestructor
 Provide a proctor for destroying arrays.
 
 bslalg_autoarraymovedestructor
 Provide a proctor for destroying arrays.
 
 bslalg_autoscalardestructor
 Provide a proctor for destroying an object.
 
 
 bslalg_bidirectionallinklistutil
 Provide utilities to maintain bidirectional list data structures.
 
 bslalg_bidirectionalnode
 Provide a node holding a value in a doubly-linked list.
 
 bslalg_constructorproxy
 Provide a proxy for constructing and destroying objects.
 
 bslalg_containerbase
 Provide a wrapper for STL allocators, for container use.
 
 bslalg_dequeimputil
 Provide basic parameters and primitive data structures for deques.
 
 bslalg_dequeiterator
 Provide a primitive iterator over deque data structures.
 
 bslalg_dequeprimitives
 Provide primitive algorithms that operate on deques.
 
 bslalg_dequeprimitives_cpp03
 Provide C++03 implementation for bslalg_dequeprimitives.h.
 
 bslalg_functoradapter
 Provide an utility that adapts callable objects to functors.
 
 bslalg_hashtableanchor
 Provide a type holding the constituent parts of a hash table.
 
 bslalg_hashtablebucket
 Provide a bucket representation for hash table data structures.
 
 bslalg_hashtableimputil
 Provide algorithms for implementing a hash table.
 
 bslalg_hashutil
 Provide a utility of hash functions.
 
 bslalg_hasstliterators
 Provide a tag type used to detect STL-like iterators traits.
 
 bslalg_hastrait
 Provide a meta-function to detect if a type has a given trait.
 
 bslalg_nothrowmovableutil
 Provide a wrapper that asserts a noexcept move constructor.
 
 bslalg_nothrowmovablewrapper
 Provide a wrapper that asserts a noexcept move constructor.
 
 bslalg_numericformatterutil
 Provide a utility for formatting numbers into strings.
 
 bslalg_rangecompare
 Provide algorithms to compare iterator-ranges of elements.
 
 bslalg_rbtreeanchor
 Encapsulate root, first, and last nodes of a tree with a count.
 
 bslalg_rbtreenode
 Provide a base class for a red-black binary tree node.
 
 bslalg_rbtreeutil
 Provide a suite of primitive algorithms on red-black trees.
 
 bslalg_scalardestructionprimitives
 Provide primitive algorithms that destroy scalars.
 
 bslalg_scalarprimitives
 Provide primitive algorithms that operate on single elements.
 
 bslalg_selecttrait
 Provide a meta-function to select a suitable trait on a type.
 
 bslalg_swaputil
 Provide a simple to use swap algorithm.
 
 bslalg_synththreewayutil
 Provide implementation utilities for operator<=>.
 
 bslalg_typetraitbitwisecopyable
 Provide a trait to mark classes as bit-wise copyable.
 
 bslalg_typetraitbitwiseequalitycomparable
 Provide a trait to mark classes as bit-wise eq.-comparable.
 
 bslalg_typetraitbitwisemoveable
 Provide a trait to mark classes as bit-wise moveable.
 
 bslalg_typetraithaspointersemantics
 Provide a trait to mark classes as having pointer semantics.
 
 bslalg_typetraithasstliterators
 Provide a trait to mark classes as having STL-like iterators.
 
 bslalg_typetraithastrivialdefaultconstructor
 Provide a trait to mark classes as having a trivial default ctor.
 
 bslalg_typetraitnil
 Provide a trait to mark classes as having no other traits.
 
 bslalg_typetraitpair
 Provide a trait to mark classes as similar to std::pair.
 
 bslalg_typetraits
 Provide compile-time traits that can be associated with types.
 
 bslalg_typetraitusesbslmaallocator
 Provide a trait to mark types that use bslma allocators.
 

Detailed Description

Purpose

Provide algorithms and traits used by the BDE STL implementation.

Mnemonic

Basic Standard Library ALgorithms (bslalg)

Description

This package provides facilities for implementing higher-level components (in particular, the standard library containers). The facilities fall into three broad classes:

Hierarchical Synopsis

The 'bslalg' package currently has 44 components having 7 levels of physical dependency. The list below shows the hierarchical ordering of the components. The order of components within each level is not architecturally significant, just alphabetical.

7. bslalg_dequeprimitives
bslalg_hashtableimputil
bslalg_rbtreeutil
6. bslalg_arrayprimitives
bslalg_hashtableanchor
5. bslalg_bidirectionalnode
bslalg_constructorproxy
bslalg_dequeiterator
4. bslalg_autoarraymovedestructor
bslalg_hashtablebucket
bslalg_scalarprimitives
bslalg_selecttrait !DEPRECATED!
bslalg_typetraits !DEPRECATED!
3. bslalg_autoarraydestructor
bslalg_autoscalardestructor
bslalg_bidirectionallinklistutil
bslalg_nothrowmovableutil
bslalg_rbtreeanchor
bslalg_typetraitbitwisecopyable !DEPRECATED!
bslalg_typetraitbitwiseequalitycomparable !DEPRECATED!
bslalg_typetraitbitwisemoveable !DEPRECATED!
bslalg_typetraithaspointersemantics !DEPRECATED!
bslalg_typetraithasstliterators !DEPRECATED!
bslalg_typetraithastrivialdefaultconstructor !DEPRECATED!
bslalg_typetraitpair !DEPRECATED!
bslalg_typetraitusesbslmaallocator !DEPRECATED!
2. bslalg_arraydestructionprimitives
bslalg_bidirectionallink
bslalg_containerbase
bslalg_dequeimputil
bslalg_functoradapter
bslalg_hashutil
bslalg_hasstliterators
bslalg_hastrait !DEPRECATED!
bslalg_nothrowmovablewrapper
bslalg_numericformatterutil
bslalg_rangecompare
bslalg_rbtreenode
bslalg_scalardestructionprimitives !DEPRECATED!
bslalg_swaputil
bslalg_synththreewayutil
bslalg_typetraitnil !DEPRECATED!
1. bslalg_arrayprimitives_cpp03 !PRIVATE!
bslalg_dequeprimitives_cpp03 !PRIVATE!

Component Synopsis

bslalg_arraydestructionprimitives : Provide primitive algorithms that destroy arrays.

bslalg_arrayprimitives : Provide primitive algorithms that operate on arrays.

'bslalg_arrayprimitives_cpp03': !PRIVATE! Provide C++03 implementation for bslalg_arrayprimitives.h

bslalg_autoarraydestructor : Provide a proctor for destroying arrays.

bslalg_autoarraymovedestructor : Provide a proctor for destroying arrays.

bslalg_autoscalardestructor : Provide a proctor for destroying an object.

bslalg_bidirectionallink : Provide a basic link type for building doubly-linked lists.

bslalg_bidirectionallinklistutil : Provide utilities to maintain bidirectional list data structures.

bslalg_bidirectionalnode : Provide a node holding a value in a doubly-linked list.

bslalg_constructorproxy : Provide a proxy for constructing and destroying objects.

bslalg_containerbase : Provide a wrapper for STL allocators, for container use.

bslalg_dequeimputil : Provide basic parameters and primitive data structures for deques.

bslalg_dequeiterator : Provide a primitive iterator over deque data structures.

bslalg_dequeprimitives : Provide primitive algorithms that operate on deques.

'bslalg_dequeprimitives_cpp03': !PRIVATE! Provide C++03 implementation for bslalg_dequeprimitives.h

bslalg_functoradapter : Provide an utility that adapts callable objects to functors.

bslalg_hashtableanchor : Provide a type holding the constituent parts of a hash table.

bslalg_hashtablebucket : Provide a bucket representation for hash table data structures.

bslalg_hashtableimputil : Provide algorithms for implementing a hash table.

bslalg_hashutil : Provide a utility of hash functions.

bslalg_hasstliterators : Provide a tag type used to detect STL-like iterators traits.

bslalg_hastrait : !DEPRECATED! Provide a meta-function to detect if a type has a given trait.

bslalg_nothrowmovableutil : Provide a wrapper that asserts a noexcept move constructor.

bslalg_nothrowmovablewrapper : Provide a wrapper that asserts a noexcept move constructor.

bslalg_numericformatterutil : Provide a utility for formatting numbers into strings.

bslalg_rangecompare : Provide algorithms to compare iterator-ranges of elements.

bslalg_rbtreeanchor : Encapsulate root, first, and last nodes of a tree with a count.

bslalg_rbtreenode : Provide a base class for a red-black binary tree node.

bslalg_rbtreeutil : Provide a suite of primitive algorithms on red-black trees.

bslalg_scalardestructionprimitives : !DEPRECATED! Provide primitive algorithms that destroy scalars.

bslalg_scalarprimitives : Provide primitive algorithms that operate on single elements.

bslalg_selecttrait : !DEPRECATED! Provide a meta-function to select a suitable trait on a type.

bslalg_swaputil : Provide a simple to use swap algorithm.

bslalg_synththreewayutil : Provide implementation utilities for operator<=>.

bslalg_typetraitbitwisecopyable : !DEPRECATED! Provide a trait to mark classes as bit-wise copyable.

bslalg_typetraitbitwiseequalitycomparable : !DEPRECATED! Provide a trait to mark classes as bit-wise eq.-comparable.

bslalg_typetraitbitwisemoveable : !DEPRECATED! Provide a trait to mark classes as bit-wise moveable.

bslalg_typetraithaspointersemantics : !DEPRECATED! Provide a trait to mark classes as having pointer semantics.

bslalg_typetraithasstliterators : !DEPRECATED! Provide a trait to mark classes as having STL-like iterators.

bslalg_typetraithastrivialdefaultconstructor : !DEPRECATED! Provide a trait to mark classes as having a trivial default ctor.

bslalg_typetraitnil : !DEPRECATED! Provide a trait to mark classes as having no other traits.

bslalg_typetraitpair : !DEPRECATED! Provide a trait to mark classes as similar to std::pair.

bslalg_typetraits : !DEPRECATED! Provide compile-time traits that can be associated with types.

bslalg_typetraitusesbslmaallocator : !DEPRECATED! Provide a trait to mark types that use bslma allocators.