Cadabra
Computer algebra system for field theory problems
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Member Functions | Static Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
cadabra::index_iterator Class Reference

Description

An iterator which iterates over indices even if they are at lower levels, i.e.

taking into account the "Inherit" property of nodes. Needs access to Properties in the current scope in order to determine which objects are indices.

#include <IndexIterator.hh>

Inheritance diagram for cadabra::index_iterator:

Public Member Functions

 index_iterator (const Properties &)
 
 index_iterator (const index_iterator &)
 
index_iteratoroperator= (const index_iterator &)
 
bool operator== (const index_iterator &) const
 
bool operator!= (const index_iterator &) const
 
index_iteratoroperator++ ()
 
index_iterator operator++ (int)
 
index_iteratoroperator+= (unsigned int)
 

Static Public Member Functions

static index_iterator create (const Properties &, const iterator_base &)
 
static index_iterator begin (const Properties &, const iterator_base &, int offset=0)
 
static index_iterator end (const Properties &, const iterator_base &)
 

Public Attributes

Ex::iterator halt
 
Ex::iterator walk
 
Ex::iterator roof
 

Private Member Functions

bool is_index (Ex::iterator) const
 

Private Attributes

const Propertiesproperties
 

Constructor & Destructor Documentation

index_iterator::index_iterator ( const Properties k)
index_iterator::index_iterator ( const index_iterator other)

Member Function Documentation

index_iterator index_iterator::begin ( const Properties properties,
const iterator_base &  it,
int  offset = 0 
)
static
index_iterator index_iterator::create ( const Properties k,
const iterator_base &  other 
)
static
index_iterator index_iterator::end ( const Properties properties,
const iterator_base &  it 
)
static
bool cadabra::index_iterator::is_index ( Ex::iterator  ) const
private
bool index_iterator::operator!= ( const index_iterator other) const
index_iterator & index_iterator::operator++ ( )
index_iterator cadabra::index_iterator::operator++ ( int  )
index_iterator & index_iterator::operator+= ( unsigned int  num)
index_iterator & index_iterator::operator= ( const index_iterator other)
bool index_iterator::operator== ( const index_iterator other) const

Member Data Documentation

Ex::iterator cadabra::index_iterator::halt
const Properties* cadabra::index_iterator::properties
private
Ex::iterator cadabra::index_iterator::roof
Ex::iterator cadabra::index_iterator::walk

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