ALib C++ Library
Library Version: 2510 R0
Documentation generated by doxygen
Loading...
Searching...
No Matches
alib::containers::StringTree< TAllocator, T, TNodeHandler, TRecycling >::TRecursiveIterator< TConst >::RecursionData Struct Reference

Description:

template<typename TAllocator, typename T, typename TNodeHandler = StringTreeNamesDynamic<character>, Recycling TRecycling = Recycling::Private>
template<bool TConst>
struct alib::containers::StringTree< TAllocator, T, TNodeHandler, TRecycling >::TRecursiveIterator< TConst >::RecursionData

Protected, internal struct used to store the data of recursive iterations.

Definition at line 1733 of file stringtree.inl.

Collaboration diagram for alib::containers::StringTree< TAllocator, T, TNodeHandler, TRecycling >::TRecursiveIterator< TConst >::RecursionData:
[legend]

Public Field Index:

union { 
 
   size_t   sorted 
 
   cmNodeBase *   unsorted 
 
actChild 
 
std::vector< cmNode * > childrenSorted
 A pointer to a dynamically allocated vector of children used with sorting.
 
lang::BidiListHook< baseNodeBase > * childrenUnsorted
 
bool(* customSorter )(const cmCursor &, const cmCursor &)
 
bool isSorting
 
bool sortingIsCaseSensitive
 
bool sortingIsDescending
 

Public Method Index:

 RecursionData () noexcept=default
 Trivial default constructor.
 
 RecursionData (const RecursionData &)=default
 Trivial default copy constructor.
 
 RecursionData (RecursionData &&) noexcept=default
 Trivial default move constructor.
 
 ~RecursionData () noexcept=default
 Trival default destructor.
 
RecursionDataoperator= (const RecursionData &)=default
 
RecursionDataoperator= (RecursionData &&) noexcept=default
 

Field Details:

◆ [union]

union { ... } alib::containers::StringTree< TAllocator, T, TNodeHandler, TRecycling >::TRecursiveIterator< TConst >::RecursionData::actChild

Combines a node hook and and a current vector index used to remember the current child in unsorted, respectively sorted mode.

◆ childrenSorted

template<typename TAllocator, typename T, typename TNodeHandler = StringTreeNamesDynamic<character>, Recycling TRecycling = Recycling::Private>
template<bool TConst>
std::vector<cmNode*> alib::containers::StringTree< TAllocator, T, TNodeHandler, TRecycling >::TRecursiveIterator< TConst >::RecursionData::childrenSorted

A pointer to a dynamically allocated vector of children used with sorting.

Definition at line 1763 of file stringtree.inl.

◆ childrenUnsorted

template<typename TAllocator, typename T, typename TNodeHandler = StringTreeNamesDynamic<character>, Recycling TRecycling = Recycling::Private>
template<bool TConst>
lang::BidiListHook<baseNodeBase>* alib::containers::StringTree< TAllocator, T, TNodeHandler, TRecycling >::TRecursiveIterator< TConst >::RecursionData::childrenUnsorted

The child hook of the parent node, used with unsorted iteration. Note that this is declared const, in case template param TConst equals true.

Definition at line 1755 of file stringtree.inl.

◆ customSorter

template<typename TAllocator, typename T, typename TNodeHandler = StringTreeNamesDynamic<character>, Recycling TRecycling = Recycling::Private>
template<bool TConst>
bool(* alib::containers::StringTree< TAllocator, T, TNodeHandler, TRecycling >::TRecursiveIterator< TConst >::RecursionData::customSorter) (const cmCursor &, const cmCursor &)

Copied from TRecursiveIterator with every recursion step.

Definition at line 1767 of file stringtree.inl.

◆ isSorting

template<typename TAllocator, typename T, typename TNodeHandler = StringTreeNamesDynamic<character>, Recycling TRecycling = Recycling::Private>
template<bool TConst>
bool alib::containers::StringTree< TAllocator, T, TNodeHandler, TRecycling >::TRecursiveIterator< TConst >::RecursionData::isSorting

Copied from TRecursiveIterator with every recursion step.

Definition at line 1771 of file stringtree.inl.

◆ sorted

template<typename TAllocator, typename T, typename TNodeHandler = StringTreeNamesDynamic<character>, Recycling TRecycling = Recycling::Private>
template<bool TConst>
size_t alib::containers::StringTree< TAllocator, T, TNodeHandler, TRecycling >::TRecursiveIterator< TConst >::RecursionData::sorted

The current child index in case of sorted access. A value of size_t(-1) indicates that the actual node itself is selected.

Definition at line 1747 of file stringtree.inl.

◆ sortingIsCaseSensitive

template<typename TAllocator, typename T, typename TNodeHandler = StringTreeNamesDynamic<character>, Recycling TRecycling = Recycling::Private>
template<bool TConst>
bool alib::containers::StringTree< TAllocator, T, TNodeHandler, TRecycling >::TRecursiveIterator< TConst >::RecursionData::sortingIsCaseSensitive

Copied from TRecursiveIterator with every recursion step.

Definition at line 1779 of file stringtree.inl.

◆ sortingIsDescending

template<typename TAllocator, typename T, typename TNodeHandler = StringTreeNamesDynamic<character>, Recycling TRecycling = Recycling::Private>
template<bool TConst>
bool alib::containers::StringTree< TAllocator, T, TNodeHandler, TRecycling >::TRecursiveIterator< TConst >::RecursionData::sortingIsDescending

Copied from TRecursiveIterator with every recursion step.

Definition at line 1775 of file stringtree.inl.

◆ unsorted

template<typename TAllocator, typename T, typename TNodeHandler = StringTreeNamesDynamic<character>, Recycling TRecycling = Recycling::Private>
template<bool TConst>
cmNodeBase* alib::containers::StringTree< TAllocator, T, TNodeHandler, TRecycling >::TRecursiveIterator< TConst >::RecursionData::unsorted

The current child of the current node in case of unsorted access If this is pointing to the end of the child map, then the actual node itself is selected by this RecursiveIterator.

Definition at line 1742 of file stringtree.inl.

Method Details:

◆ operator=() [1/2]

template<typename TAllocator, typename T, typename TNodeHandler = StringTreeNamesDynamic<character>, Recycling TRecycling = Recycling::Private>
template<bool TConst>
RecursionData & alib::containers::StringTree< TAllocator, T, TNodeHandler, TRecycling >::TRecursiveIterator< TConst >::RecursionData::operator= ( const RecursionData & )
default

Trivial default copy assign operator.

Returns
A reference to this.
Here is the call graph for this function:

◆ operator=() [2/2]

template<typename TAllocator, typename T, typename TNodeHandler = StringTreeNamesDynamic<character>, Recycling TRecycling = Recycling::Private>
template<bool TConst>
RecursionData & alib::containers::StringTree< TAllocator, T, TNodeHandler, TRecycling >::TRecursiveIterator< TConst >::RecursionData::operator= ( RecursionData && )
defaultnoexcept

Trivial default move assign operator.

Returns
A reference to this.
Here is the call graph for this function:

The documentation for this struct was generated from the following file: