di 0.1.0
Loading...
Searching...
No Matches
di::container::RBTreeIterator< Value, Tag > Class Template Reference

#include <di/container/tree/rb_tree_iterator.h>

Inheritance diagram for di::container::RBTreeIterator< Value, Tag >:
di::container::IteratorBase< RBTreeIterator< Value, Tag >, BidirectionalIteratorTag, Value, ssize_t >

Public Member Functions

 RBTreeIterator ()=default
constexpr RBTreeIterator (Node *node, bool at_end=false)
constexpr RBTreeIterator (Node &node)
constexpr auto operator* () const -> Value &
constexpr auto operator-> () const -> Value *
constexpr auto node () const -> Node &
constexpr void advance_one ()
constexpr void back_one ()
Public Member Functions inherited from di::container::IteratorBase< RBTreeIterator< Value, Tag >, BidirectionalIteratorTag, Value, ssize_t >
 IteratorBase ()=default
auto operator= (IteratorBase const &) -> IteratorBase &=default
constexpr auto operator++ () -> RBTreeIterator< Value, Tag > &
constexpr auto operator-- () -> RBTreeIterator< Value, Tag > &requires(concepts::DerivedFrom< BidirectionalIteratorTag, BidirectionalIteratorTag >)
constexpr auto operator[] (ssize_t n) const -> decltype(auto) requires(concepts::DerivedFrom< BidirectionalIteratorTag, RandomAccessIteratorTag >)
constexpr auto operator+= (ssize_t n) -> RBTreeIterator< Value, Tag > &requires(concepts::DerivedFrom< BidirectionalIteratorTag, RandomAccessIteratorTag >)
constexpr auto operator-= (ssize_t n) -> RBTreeIterator< Value, Tag > &requires(concepts::DerivedFrom< BidirectionalIteratorTag, RandomAccessIteratorTag >)

Friends

constexpr friend auto operator== (RBTreeIterator const &a, RBTreeIterator const &b) -> bool

Constructor & Destructor Documentation

◆ RBTreeIterator() [1/3]

template<typename Value, typename Tag>
di::container::RBTreeIterator< Value, Tag >::RBTreeIterator ( )
default

◆ RBTreeIterator() [2/3]

template<typename Value, typename Tag>
di::container::RBTreeIterator< Value, Tag >::RBTreeIterator ( Node * node,
bool at_end = false )
inlineconstexpr

◆ RBTreeIterator() [3/3]

template<typename Value, typename Tag>
di::container::RBTreeIterator< Value, Tag >::RBTreeIterator ( Node & node)
inlineconstexpr

Member Function Documentation

◆ advance_one()

template<typename Value, typename Tag>
void di::container::RBTreeIterator< Value, Tag >::advance_one ( )
inlineconstexpr

◆ back_one()

template<typename Value, typename Tag>
void di::container::RBTreeIterator< Value, Tag >::back_one ( )
inlineconstexpr

◆ node()

template<typename Value, typename Tag>
auto di::container::RBTreeIterator< Value, Tag >::node ( ) const->Node &
inlineconstexpr

◆ operator*()

template<typename Value, typename Tag>
auto di::container::RBTreeIterator< Value, Tag >::operator* ( ) const->Value &
inlineconstexpr

◆ operator->()

template<typename Value, typename Tag>
auto di::container::RBTreeIterator< Value, Tag >::operator-> ( ) const->Value *
inlineconstexpr

◆ operator==

template<typename Value, typename Tag>
friend auto operator== ( RBTreeIterator< Value, Tag > const & a,
RBTreeIterator< Value, Tag > const & b )->bool
friend

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