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

#include <di/container/hash/node/hash_node_iterator.h>

Inheritance diagram for di::container::HashNodeIterator< Value, Tag >:
di::container::IteratorBase< HashNodeIterator< Value, Tag >, ForwardIteratorTag, Value, isize >

Public Member Functions

 HashNodeIterator ()=default
constexpr HashNodeIterator (vocab::Span< Bucket const > buckets, usize bucket_index)
constexpr HashNodeIterator (vocab::Span< Bucket const > buckets, usize bucket_index, BucketIter current_current)
constexpr auto operator* () const -> Value &
constexpr auto operator-> () const -> Value *
constexpr void advance_one ()
constexpr auto before_current () const -> BucketIter
constexpr auto bucket_index () const -> usize
constexpr auto node () const -> Node &
Public Member Functions inherited from di::container::IteratorBase< HashNodeIterator< Value, Tag >, ForwardIteratorTag, Value, isize >
 IteratorBase ()=default
auto operator= (IteratorBase const &) -> IteratorBase &=default
constexpr auto operator++ () -> HashNodeIterator< Value, Tag > &
constexpr auto operator-- () -> HashNodeIterator< Value, Tag > &requires(concepts::DerivedFrom< ForwardIteratorTag, BidirectionalIteratorTag >)
constexpr auto operator[] (isize n) const -> decltype(auto) requires(concepts::DerivedFrom< ForwardIteratorTag, RandomAccessIteratorTag >)
constexpr auto operator+= (isize n) -> HashNodeIterator< Value, Tag > &requires(concepts::DerivedFrom< ForwardIteratorTag, RandomAccessIteratorTag >)
constexpr auto operator-= (isize n) -> HashNodeIterator< Value, Tag > &requires(concepts::DerivedFrom< ForwardIteratorTag, RandomAccessIteratorTag >)

Friends

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

Constructor & Destructor Documentation

◆ HashNodeIterator() [1/3]

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

◆ HashNodeIterator() [2/3]

template<typename Value, typename Tag>
di::container::HashNodeIterator< Value, Tag >::HashNodeIterator ( vocab::Span< Bucket const > buckets,
usize bucket_index )
inlineexplicitconstexpr

◆ HashNodeIterator() [3/3]

template<typename Value, typename Tag>
di::container::HashNodeIterator< Value, Tag >::HashNodeIterator ( vocab::Span< Bucket const > buckets,
usize bucket_index,
BucketIter current_current )
inlineexplicitconstexpr

Member Function Documentation

◆ advance_one()

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

◆ before_current()

template<typename Value, typename Tag>
auto di::container::HashNodeIterator< Value, Tag >::before_current ( ) const->BucketIter
inlineconstexpr

◆ bucket_index()

template<typename Value, typename Tag>
auto di::container::HashNodeIterator< Value, Tag >::bucket_index ( ) const->usize
inlineconstexpr

◆ node()

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

◆ operator*()

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

◆ operator->()

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

◆ operator==

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

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