xrpld
Loading...
Searching...
No Matches
xrpl::Dir::ConstIterator Class Reference

#include <Dir.h>

Collaboration diagram for xrpl::Dir::ConstIterator:

Public Types

using value_type = Dir::value_type
using pointer = value_type const*
using reference = value_type const&
using difference_type = std::ptrdiff_t
using iterator_category = std::forward_iterator_tag

Public Member Functions

bool operator== (ConstIterator const &other) const
bool operator!= (ConstIterator const &other) const
reference operator* () const
pointer operator-> () const
ConstIteratoroperator++ ()
ConstIterator operator++ (int)
ConstIteratornextPage ()
std::size_t pageSize ()
Keylet const & page () const
uint256 index () const

Private Member Functions

 ConstIterator (ReadView const &view, Keylet const &root, Keylet const &page)

Private Attributes

ReadView const * view_ = nullptr
Keylet root_
Keylet page_
uint256 index_
std::optional< value_typecache_
SLE::const_pointer sle_
STVector256 const * indexes_ = nullptr
std::vector< uint256 >::const_iterator it_

Friends

class Dir

Detailed Description

Definition at line 41 of file Dir.h.

Member Typedef Documentation

◆ value_type

Definition at line 44 of file Dir.h.

◆ pointer

Definition at line 45 of file Dir.h.

◆ reference

Definition at line 46 of file Dir.h.

◆ difference_type

◆ iterator_category

Constructor & Destructor Documentation

◆ ConstIterator()

xrpl::Dir::ConstIterator::ConstIterator ( ReadView const & view,
Keylet const & root,
Keylet const & page )
private

Definition at line 95 of file Dir.h.

Member Function Documentation

◆ operator==()

bool xrpl::const_iterator::operator== ( ConstIterator const & other) const

Definition at line 50 of file Dir.cpp.

◆ operator!=()

bool xrpl::Dir::ConstIterator::operator!= ( ConstIterator const & other) const

Definition at line 54 of file Dir.h.

◆ operator*()

const_iterator::reference xrpl::const_iterator::operator* ( ) const

Definition at line 62 of file Dir.cpp.

◆ operator->()

pointer xrpl::Dir::ConstIterator::operator-> ( ) const

Definition at line 63 of file Dir.h.

◆ operator++() [1/2]

const_iterator & xrpl::const_iterator::operator++ ( )

Definition at line 71 of file Dir.cpp.

◆ operator++() [2/2]

const_iterator xrpl::const_iterator::operator++ ( int )

Definition at line 85 of file Dir.cpp.

◆ nextPage()

const_iterator & xrpl::const_iterator::nextPage ( )

Definition at line 95 of file Dir.cpp.

◆ pageSize()

std::size_t xrpl::const_iterator::pageSize ( )

Definition at line 124 of file Dir.cpp.

◆ page()

Keylet const & xrpl::Dir::ConstIterator::page ( ) const

Definition at line 81 of file Dir.h.

◆ index()

uint256 xrpl::Dir::ConstIterator::index ( ) const

Definition at line 87 of file Dir.h.

◆ Dir

friend class Dir
friend

Definition at line 93 of file Dir.h.

Member Data Documentation

◆ view_

ReadView const* xrpl::Dir::ConstIterator::view_ = nullptr
private

Definition at line 100 of file Dir.h.

◆ root_

Keylet xrpl::Dir::ConstIterator::root_
private

Definition at line 101 of file Dir.h.

◆ page_

Keylet xrpl::Dir::ConstIterator::page_
private

Definition at line 102 of file Dir.h.

◆ index_

uint256 xrpl::Dir::ConstIterator::index_
private

Definition at line 103 of file Dir.h.

◆ cache_

std::optional<value_type> xrpl::Dir::ConstIterator::cache_
mutableprivate

Definition at line 104 of file Dir.h.

◆ sle_

SLE::const_pointer xrpl::Dir::ConstIterator::sle_
private

Definition at line 105 of file Dir.h.

◆ indexes_

STVector256 const* xrpl::Dir::ConstIterator::indexes_ = nullptr
private

Definition at line 106 of file Dir.h.

◆ it_

std::vector<uint256>::const_iterator xrpl::Dir::ConstIterator::it_
private

Definition at line 107 of file Dir.h.