ALib C++ Library
Library Version: 2412 R0
Documentation generated by doxygen
Loading...
Searching...
No Matches
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 1767 of file stringtree.hpp.

#include <stringtree.hpp>

Collaboration diagram for 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 { ... } 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*> childrenSorted

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

Definition at line 1797 of file stringtree.hpp.

◆ childrenUnsorted

template<typename TAllocator , typename T , typename TNodeHandler = StringTreeNamesDynamic<character>, Recycling TRecycling = Recycling::Private>
template<bool TConst>
lang::BidiListHook<baseNodeBase>* 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 1789 of file stringtree.hpp.

◆ customSorter

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

Copied from TRecursiveIterator with every recursion step.

Definition at line 1801 of file stringtree.hpp.

◆ isSorting

template<typename TAllocator , typename T , typename TNodeHandler = StringTreeNamesDynamic<character>, Recycling TRecycling = Recycling::Private>
template<bool TConst>
bool isSorting

Copied from TRecursiveIterator with every recursion step.

Definition at line 1805 of file stringtree.hpp.

◆ sorted

template<typename TAllocator , typename T , typename TNodeHandler = StringTreeNamesDynamic<character>, Recycling TRecycling = Recycling::Private>
template<bool TConst>
size_t 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 1781 of file stringtree.hpp.

◆ sortingIsCaseSensitive

template<typename TAllocator , typename T , typename TNodeHandler = StringTreeNamesDynamic<character>, Recycling TRecycling = Recycling::Private>
template<bool TConst>
bool sortingIsCaseSensitive

Copied from TRecursiveIterator with every recursion step.

Definition at line 1813 of file stringtree.hpp.

◆ sortingIsDescending

template<typename TAllocator , typename T , typename TNodeHandler = StringTreeNamesDynamic<character>, Recycling TRecycling = Recycling::Private>
template<bool TConst>
bool sortingIsDescending

Copied from TRecursiveIterator with every recursion step.

Definition at line 1809 of file stringtree.hpp.

◆ unsorted

template<typename TAllocator , typename T , typename TNodeHandler = StringTreeNamesDynamic<character>, Recycling TRecycling = Recycling::Private>
template<bool TConst>
cmNodeBase* 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 1776 of file stringtree.hpp.

Method Details:

◆ operator=() [1/2]

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

Trivial default copy assign operator.

Returns
A reference to this.

◆ operator=() [2/2]

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

Trivial default move assign operator.

Returns
A reference to this.

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