Logo ROOT  
Reference Guide
ROOT::Experimental::Detail::RFieldBase::RSchemaIterator Class Reference

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

Definition at line 130 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. More...
 
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. More...
 

#include <ROOT/RField.hxx>

Member Typedef Documentation

◆ difference_type

◆ iterator

◆ iterator_category

Definition at line 142 of file RField.hxx.

◆ pointer

◆ reference

◆ value_type

Constructor & Destructor Documentation

◆ RSchemaIterator() [1/2]

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

Definition at line 148 of file RField.hxx.

◆ RSchemaIterator() [2/2]

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

Definition at line 149 of file RField.hxx.

◆ ~RSchemaIterator()

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

Definition at line 150 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 368 of file RField.cxx.

◆ operator!=()

Definition at line 160 of file RField.hxx.

◆ operator*()

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

Definition at line 157 of file RField.hxx.

◆ operator++() [1/2]

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

Definition at line 156 of file RField.hxx.

◆ operator++() [2/2]

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

Definition at line 155 of file RField.hxx.

◆ operator->()

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

Definition at line 158 of file RField.hxx.

◆ operator==()

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

Definition at line 159 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 139 of file RField.hxx.


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