MADARA  3.4.1
madara::knowledge::VariableReferenceMapReader::const_iterator Class Reference

Constant Input Iterator over values in the map. More...

#include <VariableReference.h>

Public Types

using difference_type = size_t
 
using iterator_category = std::input_iterator_tag
 
using pointer = value_type *
 
using reference = value_type
 
using value_type = std::pair< const char *, const KnowledgeRecord * >
 

Public Member Functions

 const_iterator (const const_iterator &o)
 
 const_iterator (const_iterator &&o)=default
 
bool operator!= (const const_iterator &o) const
 
value_type operator* () const
 Gives a pair value (note, not a reference). More...
 
const_iteratoroperator++ ()
 Increments iterator, to move onto the next record in the map. More...
 
const_iterator operator++ (int)
 Post-Increments iterator, to move onto the next record in the map. More...
 
const_iteratoroperator= (const const_iterator &o)
 
const_iteratoroperator= (const_iterator &&o)=default
 
bool operator== (const const_iterator &o) const
 

Private Types

using biter_type = utility::CircularBuffer< KnowledgeRecord >::const_iterator
 
using biter_uptr = std::unique_ptr< biter_type >
 
using miter_type = VariableReferenceMap::const_iterator
 

Private Member Functions

 const_iterator (const VariableReferenceMapReader &f)
 
 const_iterator (const VariableReferenceMapReader &f, miter_type miter)
 
biter_uptr begin_biter ()
 

Private Attributes

biter_uptr biter_ {nullptr}
 Iterator over history of current map member, if any exists. More...
 
miter_type miter_
 Iterator over map members. More...
 
const VariableReferenceMapReaderreader_
 Reader the iterator belongs to. More...
 

Friends

class VariableReferenceMapReader
 

Detailed Description

Constant Input Iterator over values in the map.

Definition at line 142 of file VariableReference.h.

Member Typedef Documentation

◆ biter_type

◆ biter_uptr

◆ difference_type

◆ iterator_category

◆ miter_type

using madara::knowledge::VariableReferenceMapReader::const_iterator::miter_type = VariableReferenceMap::const_iterator
private

Definition at line 209 of file VariableReference.h.

◆ pointer

◆ reference

◆ value_type

Constructor & Destructor Documentation

◆ const_iterator() [1/4]

madara::knowledge::VariableReferenceMapReader::const_iterator::const_iterator ( const VariableReferenceMapReader f)
inlineprivate

Definition at line 250 of file VariableReference.h.

◆ const_iterator() [2/4]

madara::knowledge::VariableReferenceMapReader::const_iterator::const_iterator ( const VariableReferenceMapReader f,
miter_type  miter 
)
inlineprivate

Definition at line 255 of file VariableReference.h.

◆ const_iterator() [3/4]

madara::knowledge::VariableReferenceMapReader::const_iterator::const_iterator ( const const_iterator o)
inline

Definition at line 261 of file VariableReference.h.

◆ const_iterator() [4/4]

madara::knowledge::VariableReferenceMapReader::const_iterator::const_iterator ( const_iterator &&  o)
default

Member Function Documentation

◆ begin_biter()

biter_uptr madara::knowledge::VariableReferenceMapReader::const_iterator::begin_biter ( )
inlineprivate

Definition at line 213 of file VariableReference.h.

◆ operator!=()

bool madara::knowledge::VariableReferenceMapReader::const_iterator::operator!= ( const const_iterator o) const
inline

Definition at line 203 of file VariableReference.h.

◆ operator*()

value_type madara::knowledge::VariableReferenceMapReader::const_iterator::operator* ( void  ) const
inline

Gives a pair value (note, not a reference).

First part is the name of the record, second part is the value.

Definition at line 155 of file VariableReference.h.

◆ operator++() [1/2]

const_iterator& madara::knowledge::VariableReferenceMapReader::const_iterator::operator++ ( void  )
inline

Increments iterator, to move onto the next record in the map.

Definition at line 167 of file VariableReference.h.

◆ operator++() [2/2]

const_iterator madara::knowledge::VariableReferenceMapReader::const_iterator::operator++ ( int  )
inline

Post-Increments iterator, to move onto the next record in the map.

Use pre-increment instead when possible.

Definition at line 189 of file VariableReference.h.

◆ operator=() [1/2]

const_iterator& madara::knowledge::VariableReferenceMapReader::const_iterator::operator= ( const const_iterator o)
inline

Definition at line 268 of file VariableReference.h.

◆ operator=() [2/2]

const_iterator& madara::knowledge::VariableReferenceMapReader::const_iterator::operator= ( const_iterator &&  o)
default

◆ operator==()

bool madara::knowledge::VariableReferenceMapReader::const_iterator::operator== ( const const_iterator o) const
inline

Definition at line 196 of file VariableReference.h.

Friends And Related Function Documentation

◆ VariableReferenceMapReader

friend class VariableReferenceMapReader
friend

Definition at line 289 of file VariableReference.h.

Member Data Documentation

◆ biter_

biter_uptr madara::knowledge::VariableReferenceMapReader::const_iterator::biter_ {nullptr}
private

Iterator over history of current map member, if any exists.

Definition at line 287 of file VariableReference.h.

◆ miter_

miter_type madara::knowledge::VariableReferenceMapReader::const_iterator::miter_
private

Iterator over map members.

Definition at line 284 of file VariableReference.h.

◆ reader_

const VariableReferenceMapReader* madara::knowledge::VariableReferenceMapReader::const_iterator::reader_
private

Reader the iterator belongs to.

Definition at line 281 of file VariableReference.h.


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