PolyBoRi
Public Types | Public Member Functions | Public Attributes | Protected Member Functions
polybori::CTermStack Class Reference

This class defines an iterator for the monomials in a Boolean polynomial. More...

#include <CTermStack.h>

Inheritance diagram for polybori::CTermStack:
polybori::CTermStackBase< NavigatorType, BaseType >

List of all members.

Public Types

typedef CTermStackBase
< NavigatorType, BaseType > 
base
typedef CTermStack
< NavigatorType, Category,
BaseType > 
self
typedef CTermStack
< NavigatorType, Category,
internal_tag
purestack_type
 Defining a type for simple stacking of term elements.
typedef Category iterator_category
typedef base::navigator navigator
 Get type of navigators.
typedef on_same_type< Category,
std::forward_iterator_tag,
project_ith< 0 >, handle_else
< NavigatorType > >::type 
else_handler

Public Member Functions

 CTermStack ()
 Default constructor.
 CTermStack (navigator navi)
 Construct from initial navigator.
template<class Dummy >
 CTermStack (navigator navi, const Dummy &)
void init ()
void initLast ()
void incrementElse ()
void next ()
void previous ()
void increment ()
void decrement ()
void terminate ()
void followElse ()
void incrementValidElse ()

Public Attributes

else_handler handleElse

Protected Member Functions

template<class TermStack >
void append (const TermStack &rhs)

Detailed Description

This class defines an iterator for the monomials in a Boolean polynomial.


Member Typedef Documentation

typedef CTermStackBase<NavigatorType, BaseType> polybori::CTermStack::base
typedef on_same_type<Category, std::forward_iterator_tag, project_ith<0>, handle_else<NavigatorType> >::type polybori::CTermStack::else_handler

Defining a type for simple stacking of term elements.

typedef CTermStack<NavigatorType, Category, BaseType> polybori::CTermStack::self

Constructor & Destructor Documentation

polybori::CTermStack::CTermStack ( ) [inline]

Default constructor.

polybori::CTermStack::CTermStack ( navigator  navi) [inline]

Construct from initial navigator.

template<class Dummy >
polybori::CTermStack::CTermStack ( navigator  navi,
const Dummy &   
) [inline]

Construct from initial navigator, second argument is just for having the same interface with block and degree-stacks


Member Function Documentation

template<class TermStack >
void polybori::CTermStack::append ( const TermStack &  rhs) [inline, protected]
void polybori::CTermStack::decrement ( ) [inline]

Reimplemented in polybori::CReverseTermStack.

void polybori::CTermStack::followElse ( ) [inline]
void polybori::CTermStack::increment ( ) [inline]

Reimplemented in polybori::CReverseTermStack.

void polybori::CTermStack::incrementElse ( ) [inline]
void polybori::CTermStack::incrementValidElse ( ) [inline]
void polybori::CTermStack::init ( ) [inline]

Reimplemented in polybori::CReverseTermStack.

void polybori::CTermStack::initLast ( ) [inline]

Reimplemented in polybori::CReverseTermStack.

void polybori::CTermStack::next ( ) [inline]
void polybori::CTermStack::previous ( ) [inline]
void polybori::CTermStack::terminate ( ) [inline]

Member Data Documentation


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