Skip to content

DIWNE::FilteredRecursiveNodeRangeImpl

More...

#include "DIWNE/Core/diwne_iterators.h"

Inherits from DIWNE::FilteredNodeRangeImpl< Range, Iterator, NodeType, IsConst >, DIWNE::NodeRangeBase< Range, Iterator, NodeType, IsConst >

Inherited by DIWNE::FilteredRecursiveNodeRange< NodeType >

Protected Types

Name
using FilteredNodeRangeImpl< Range, Iterator, NodeType, IsConst >Super

Public Functions

Name
FilteredRecursiveNodeRangeImpl(typename Super::Predicate predicate, typename Super::Container nodes)
FilteredRecursiveNodeRangeImpl(typename Super::Predicate predicate, typename Super::Predicate divePredicate, typename Super::Container nodes)
Iteratorbegin()
Iteratorend()

Protected Attributes

Name
Super::Predicate_divePredicate

Additional inherited members

Protected Types inherited from DIWNE::FilteredNodeRangeImpl< Range, Iterator, NodeType, IsConst >

Name
using bool(*)(const Node *)Predicate

Public Functions inherited from DIWNE::FilteredNodeRangeImpl< Range, Iterator, NodeType, IsConst >

Name
FilteredNodeRangeImpl(Predicate predicate, typename Super::Container nodes)

Protected Attributes inherited from DIWNE::FilteredNodeRangeImpl< Range, Iterator, NodeType, IsConst >

Name
Predicate_predicate

Public Types inherited from DIWNE::NodeRangeBase< Range, Iterator, NodeType, IsConst >

Name
using typename Iterator::ContainerContainer

Public Functions inherited from DIWNE::NodeRangeBase< Range, Iterator, NodeType, IsConst >

Name
std::vector< std::shared_ptr< NodeType > >collect()<br>Collect all elements in the range and return them as a std::vector of owning shared pointers.
std::vector< NodeType * >collectRaw()<br>Collect all elements in the range and return them as a std::vector of non-owning raw pointers.

Protected Functions inherited from DIWNE::NodeRangeBase< Range, Iterator, NodeType, IsConst >

Name
NodeRangeBase(Container nodes)
Range *self()<br>CRTP self pointer (pointer to the derived type)

Protected Attributes inherited from DIWNE::NodeRangeBase< Range, Iterator, NodeType, IsConst >

Name
Container_nodes

Detailed Description

cpp
template <typename Range ,
typename Iterator ,
typename NodeType ,
bool IsConst>
class DIWNE::FilteredRecursiveNodeRangeImpl;
template <typename Range ,
typename Iterator ,
typename NodeType ,
bool IsConst>
class DIWNE::FilteredRecursiveNodeRangeImpl;

Protected Types Documentation

using Super

cpp
using DIWNE::FilteredRecursiveNodeRangeImpl< Range, Iterator, NodeType, IsConst >::Super =  FilteredNodeRangeImpl<Range, Iterator, NodeType, IsConst>;
using DIWNE::FilteredRecursiveNodeRangeImpl< Range, Iterator, NodeType, IsConst >::Super =  FilteredNodeRangeImpl<Range, Iterator, NodeType, IsConst>;

Public Functions Documentation

function FilteredRecursiveNodeRangeImpl

cpp
inline FilteredRecursiveNodeRangeImpl(
    typename Super::Predicate predicate,
    typename Super::Container nodes
)
inline FilteredRecursiveNodeRangeImpl(
    typename Super::Predicate predicate,
    typename Super::Container nodes
)

function FilteredRecursiveNodeRangeImpl

cpp
inline FilteredRecursiveNodeRangeImpl(
    typename Super::Predicate predicate,
    typename Super::Predicate divePredicate,
    typename Super::Container nodes
)
inline FilteredRecursiveNodeRangeImpl(
    typename Super::Predicate predicate,
    typename Super::Predicate divePredicate,
    typename Super::Container nodes
)

function begin

cpp
inline Iterator begin()
inline Iterator begin()

function end

cpp
inline Iterator end()
inline Iterator end()

Protected Attributes Documentation

variable _divePredicate

cpp
Super::Predicate _divePredicate {nullptr};
Super::Predicate _divePredicate {nullptr};

Updated on 2025-05-31 at 12:55:31 +0000