Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
ROOT::Experimental::Detail::RFieldBase::RSchemaIterator Class Reference

Iterates over the sub tree of fields in depth-first search order.

Definition at line 114 of file RField.hxx.

Classes

struct  Position
 

Public Types

using difference_type = std::ptrdiff_t
 
using iterator = RSchemaIterator
 
using iterator_category = std::forward_iterator_tag
 
using pointer = RFieldBase *
 
using reference = RFieldBase &
 
using value_type = RFieldBase
 

Public Member Functions

 RSchemaIterator ()
 
 RSchemaIterator (pointer val, int idxInParent)
 
 ~RSchemaIterator ()
 
void Advance ()
 Given that the iterator points to a valid field which is not the end iterator, go to the next field in depth-first search order.
 
bool operator!= (const iterator &rh) const
 
reference operator* () const
 
iteratoroperator++ ()
 
iterator operator++ (int)
 
pointer operator-> () const
 
bool operator== (const iterator &rh) const
 

Private Attributes

std::vector< PositionfStack
 The stack of nodes visited when walking down the tree of fields.
 

#include <ROOT/RField.hxx>

Member Typedef Documentation

◆ difference_type

◆ iterator

◆ iterator_category

Definition at line 126 of file RField.hxx.

◆ pointer

◆ reference

◆ value_type

Constructor & Destructor Documentation

◆ RSchemaIterator() [1/2]

ROOT::Experimental::Detail::RFieldBase::RSchemaIterator::RSchemaIterator ( )
inline

Definition at line 132 of file RField.hxx.

◆ RSchemaIterator() [2/2]

ROOT::Experimental::Detail::RFieldBase::RSchemaIterator::RSchemaIterator ( pointer  val,
int  idxInParent 
)
inline

Definition at line 133 of file RField.hxx.

◆ ~RSchemaIterator()

ROOT::Experimental::Detail::RFieldBase::RSchemaIterator::~RSchemaIterator ( )
inline

Definition at line 134 of file RField.hxx.

Member Function Documentation

◆ Advance()

void ROOT::Experimental::Detail::RFieldBase::RSchemaIterator::Advance ( )

Given that the iterator points to a valid field which is not the end iterator, go to the next field in depth-first search order.

Definition at line 318 of file RField.cxx.

◆ operator!=()

bool ROOT::Experimental::Detail::RFieldBase::RSchemaIterator::operator!= ( const iterator rh) const
inline

Definition at line 144 of file RField.hxx.

◆ operator*()

reference ROOT::Experimental::Detail::RFieldBase::RSchemaIterator::operator* ( ) const
inline

Definition at line 141 of file RField.hxx.

◆ operator++() [1/2]

iterator & ROOT::Experimental::Detail::RFieldBase::RSchemaIterator::operator++ ( )
inline

Definition at line 140 of file RField.hxx.

◆ operator++() [2/2]

iterator ROOT::Experimental::Detail::RFieldBase::RSchemaIterator::operator++ ( int  )
inline

Definition at line 139 of file RField.hxx.

◆ operator->()

pointer ROOT::Experimental::Detail::RFieldBase::RSchemaIterator::operator-> ( ) const
inline

Definition at line 142 of file RField.hxx.

◆ operator==()

bool ROOT::Experimental::Detail::RFieldBase::RSchemaIterator::operator== ( const iterator rh) const
inline

Definition at line 143 of file RField.hxx.

Member Data Documentation

◆ fStack

std::vector<Position> ROOT::Experimental::Detail::RFieldBase::RSchemaIterator::fStack
private

The stack of nodes visited when walking down the tree of fields.

Definition at line 123 of file RField.hxx.

Libraries for ROOT::Experimental::Detail::RFieldBase::RSchemaIterator:

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