PolyBoRi
|
This class defines an iterator for the monomials in a Boolean polynomial. More...
#include <CTermIter.h>
Public Types | |
typedef StackType | stack_type |
Define type for storing current path (term) in stack of nodes. More... | |
typedef stack_type::navigator | navigator |
Get type of navigators. More... | |
typedef navigator::idx_type | idx_type |
Type for indices. More... | |
typedef navigator::bool_type | bool_type |
Type for Boolean results. More... | |
typedef navigator::size_type | size_type |
Type for lengths. More... | |
typedef navigator::deg_type | deg_type |
Type for degrees. More... | |
typedef TermGeneratorType | term_generator |
Type for functional, which generates actual term, for current path. More... | |
Iterators over current term (without explicite construction) | |
typedef stack_type::const_iterator | const_iterator |
typedef stack_type::const_reverse_iterator | const_reverse_iterator |
Public Member Functions | |
CTermIter (const CTermIter &rhs) | |
Copy constructor. More... | |
template<class MgrType > | |
CTermIter (navigator navi, const MgrType &mgr) | |
Construct from navigator over decision diagram. More... | |
~CTermIter () | |
Destructor. More... | |
void | increment () |
Incrementation operation. More... | |
void | decrement () |
Decrementation operation. More... | |
bool_type | equal (const CTermIter &rhs) const |
Equality test. More... | |
term_generator::result_type | dereference () const |
Dereferencing of the iterator. More... | |
bool_type | isOne () const |
Determine whether term is one (without explicit constructing) More... | |
bool_type | isZero () const |
Determine whether term is zero (without explicit constructing) More... | |
bool_type | isEnd () const |
Check, whether end of iteration is reached. More... | |
deg_type | deg () const |
Get degree of current term. More... | |
idx_type | firstIndex () const |
Get first index of current term. More... | |
navigator | navigation () const |
Get navigator of term start. More... | |
Interface for iteration over term without constructing | |
const_iterator | begin () const |
const_iterator | end () const |
const_reverse_iterator | rbegin () const |
const_reverse_iterator | rend () const |
Protected Attributes | |
term_generator | m_getTerm |
The functional which defines the dereferecing operation. More... | |
stack_type | m_stack |
The stack, which carries the current path. More... | |
This class defines an iterator for the monomials in a Boolean polynomial.
typedef navigator::bool_type polybori::CTermIter< StackType, TermGeneratorType >::bool_type |
Type for Boolean results.
typedef stack_type::const_iterator polybori::CTermIter< StackType, TermGeneratorType >::const_iterator |
typedef stack_type::const_reverse_iterator polybori::CTermIter< StackType, TermGeneratorType >::const_reverse_iterator |
typedef navigator::deg_type polybori::CTermIter< StackType, TermGeneratorType >::deg_type |
Type for degrees.
typedef navigator::idx_type polybori::CTermIter< StackType, TermGeneratorType >::idx_type |
Type for indices.
typedef stack_type::navigator polybori::CTermIter< StackType, TermGeneratorType >::navigator |
Get type of navigators.
typedef navigator::size_type polybori::CTermIter< StackType, TermGeneratorType >::size_type |
Type for lengths.
typedef StackType polybori::CTermIter< StackType, TermGeneratorType >::stack_type |
Define type for storing current path (term) in stack of nodes.
typedef TermGeneratorType polybori::CTermIter< StackType, TermGeneratorType >::term_generator |
Type for functional, which generates actual term, for current path.
|
inline |
Copy constructor.
|
inline |
Construct from navigator over decision diagram.
|
inline |
Destructor.
|
inline |
|
inline |
Decrementation operation.
|
inline |
Get degree of current term.
|
inline |
Dereferencing of the iterator.
|
inline |
|
inline |
Equality test.
References polybori::CTermIter< StackType, TermGeneratorType >::m_stack.
|
inline |
Get first index of current term.
References PBORI_ASSERT.
|
inline |
Incrementation operation.
|
inline |
Check, whether end of iteration is reached.
|
inline |
Determine whether term is one (without explicit constructing)
|
inline |
Determine whether term is zero (without explicit constructing)
|
inline |
Get navigator of term start.
|
inline |
|
inline |
|
protected |
The functional which defines the dereferecing operation.
|
protected |
The stack, which carries the current path.
Referenced by polybori::CTermIter< StackType, TermGeneratorType >::equal().