polybori::CTermStackBase< NavigatorType, BaseType > Class Template Reference

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

#include <CTermStack.h>

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

polybori::CTermStack< NavigatorType, Category > polybori::CTermStack< NavigatorType, Category, BaseType > polybori::CReverseTermStack< NavigatorType, Category > polybori::CDegStackCore< NavigatorType, invalid_tag, Category, BaseType > polybori::CDegStackCore< NavigatorType, valid_tag, Category, BaseType >

List of all members.

Public Types

typedef CTermStackBase
< NavigatorType, BaseType > 
self
typedef NavigatorType navigator
 Get type of navigators.
typedef navigator::idx_type idx_type
 Type for indices.
typedef navigator::size_type size_type
 Type for lengths.
typedef navigator::deg_type deg_type
typedef navigator::bool_type bool_type
typedef std::deque< navigatorstack_type
 Define type for stacking.
typedef stack_type::reference reference
typedef stack_type::const_reference const_reference
typedef
boost::indirect_iterator
< typename
stack_type::const_iterator,
typename navigator::value_type,
boost::use_default, typename
navigator::reference > 
const_iterator
typedef stack_type::const_iterator stack_iterator
typedef
stack_type::const_reverse_iterator 
stack_reverse_iterator
typedef
boost::indirect_iterator
< typename
stack_type::const_reverse_iterator,
typename navigator::value_type,
boost::use_default, typename
navigator::reference > 
const_reverse_iterator
typedef stack_type::value_type top_type
 result type of top()

Public Member Functions

bool_type empty () const
const_reference top () const
idx_type index () const
size_type size () const
const_iterator begin () const
const_iterator end () const
const_reverse_iterator rbegin () const
const_reverse_iterator rend () const
navigator navigation () const
 Get navigator of stack start.
 CTermStackBase ()
 Default constructor.
 CTermStackBase (navigator navi)
 Construct from initial navigator.
 CTermStackBase (const CTermStackBase &rhs)
 Copy constructor.
bool_type equal (const self &rhs) const
 Equality test (assume iterators from same instance).
void incrementThen ()
void incrementElse ()
void decrementNode ()
bool_type isConstant () const
bool_type isTerminated () const
bool_type isInvalid () const
void followThen ()
void markOne ()
bool_type markedOne () const
void clearOne ()
deg_type deg () const
void restart (navigator navi)
bool isOne () const
bool isZero () const
bool atBegin () const
bool atEnd () const
bool atEnd (navigator navi) const
bool validEnd () const
bool validEnd (navigator navi) const
void print () const
stack_iterator stackBegin () const
stack_iterator stackEnd () const
stack_reverse_iterator stackRBegin () const
stack_reverse_iterator stackREnd () const

Protected Member Functions

void push (navigator __x)
void clear ()
template<class TermStack>
void append (const TermStack &rhs)

Friends

class CTermStackBase


Detailed Description

template<class NavigatorType, class BaseType = internal_tag>
class polybori::CTermStackBase< NavigatorType, BaseType >

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

Member Typedef Documentation

template<class NavigatorType, class BaseType = internal_tag>
typedef CTermStackBase<NavigatorType, BaseType> polybori::CTermStackBase< NavigatorType, BaseType >::self

template<class NavigatorType, class BaseType = internal_tag>
typedef NavigatorType polybori::CTermStackBase< NavigatorType, BaseType >::navigator

template<class NavigatorType, class BaseType = internal_tag>
typedef navigator::idx_type polybori::CTermStackBase< NavigatorType, BaseType >::idx_type

template<class NavigatorType, class BaseType = internal_tag>
typedef navigator::size_type polybori::CTermStackBase< NavigatorType, BaseType >::size_type

template<class NavigatorType, class BaseType = internal_tag>
typedef navigator::deg_type polybori::CTermStackBase< NavigatorType, BaseType >::deg_type

template<class NavigatorType, class BaseType = internal_tag>
typedef navigator::bool_type polybori::CTermStackBase< NavigatorType, BaseType >::bool_type

template<class NavigatorType, class BaseType = internal_tag>
typedef std::deque<navigator> polybori::CTermStackBase< NavigatorType, BaseType >::stack_type

Define type for stacking.

template<class NavigatorType, class BaseType = internal_tag>
typedef stack_type::reference polybori::CTermStackBase< NavigatorType, BaseType >::reference

template<class NavigatorType, class BaseType = internal_tag>
typedef stack_type::const_reference polybori::CTermStackBase< NavigatorType, BaseType >::const_reference

template<class NavigatorType, class BaseType = internal_tag>
typedef boost::indirect_iterator<typename stack_type::const_iterator, typename navigator::value_type, boost::use_default, typename navigator::reference> polybori::CTermStackBase< NavigatorType, BaseType >::const_iterator

template<class NavigatorType, class BaseType = internal_tag>
typedef stack_type::const_iterator polybori::CTermStackBase< NavigatorType, BaseType >::stack_iterator

template<class NavigatorType, class BaseType = internal_tag>
typedef stack_type::const_reverse_iterator polybori::CTermStackBase< NavigatorType, BaseType >::stack_reverse_iterator

template<class NavigatorType, class BaseType = internal_tag>
typedef boost::indirect_iterator<typename stack_type::const_reverse_iterator, typename navigator::value_type, boost::use_default, typename navigator::reference> polybori::CTermStackBase< NavigatorType, BaseType >::const_reverse_iterator

template<class NavigatorType, class BaseType = internal_tag>
typedef stack_type::value_type polybori::CTermStackBase< NavigatorType, BaseType >::top_type

result type of top()


Constructor & Destructor Documentation

template<class NavigatorType, class BaseType = internal_tag>
polybori::CTermStackBase< NavigatorType, BaseType >::CTermStackBase (  )  [inline]

Default constructor.

template<class NavigatorType, class BaseType = internal_tag>
polybori::CTermStackBase< NavigatorType, BaseType >::CTermStackBase ( navigator  navi  )  [inline]

Construct from initial navigator.

template<class NavigatorType, class BaseType = internal_tag>
polybori::CTermStackBase< NavigatorType, BaseType >::CTermStackBase ( const CTermStackBase< NavigatorType, BaseType > &  rhs  )  [inline]

Copy constructor.


Member Function Documentation

template<class NavigatorType, class BaseType = internal_tag>
void polybori::CTermStackBase< NavigatorType, BaseType >::push ( navigator  __x  )  [inline, protected]

template<class NavigatorType, class BaseType = internal_tag>
void polybori::CTermStackBase< NavigatorType, BaseType >::clear (  )  [inline, protected]

template<class NavigatorType, class BaseType = internal_tag>
bool_type polybori::CTermStackBase< NavigatorType, BaseType >::empty (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
const_reference polybori::CTermStackBase< NavigatorType, BaseType >::top (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
idx_type polybori::CTermStackBase< NavigatorType, BaseType >::index (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
size_type polybori::CTermStackBase< NavigatorType, BaseType >::size (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
const_iterator polybori::CTermStackBase< NavigatorType, BaseType >::begin (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
const_iterator polybori::CTermStackBase< NavigatorType, BaseType >::end (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
const_reverse_iterator polybori::CTermStackBase< NavigatorType, BaseType >::rbegin (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
const_reverse_iterator polybori::CTermStackBase< NavigatorType, BaseType >::rend (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
navigator polybori::CTermStackBase< NavigatorType, BaseType >::navigation (  )  const [inline]

Get navigator of stack start.

template<class NavigatorType, class BaseType = internal_tag>
bool_type polybori::CTermStackBase< NavigatorType, BaseType >::equal ( const self rhs  )  const [inline]

Equality test (assume iterators from same instance).

template<class NavigatorType, class BaseType = internal_tag>
void polybori::CTermStackBase< NavigatorType, BaseType >::incrementThen (  )  [inline]

template<class NavigatorType, class BaseType = internal_tag>
void polybori::CTermStackBase< NavigatorType, BaseType >::incrementElse (  )  [inline]

template<class NavigatorType, class BaseType = internal_tag>
void polybori::CTermStackBase< NavigatorType, BaseType >::decrementNode (  )  [inline]

template<class NavigatorType, class BaseType = internal_tag>
bool_type polybori::CTermStackBase< NavigatorType, BaseType >::isConstant (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
bool_type polybori::CTermStackBase< NavigatorType, BaseType >::isTerminated (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
bool_type polybori::CTermStackBase< NavigatorType, BaseType >::isInvalid (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
void polybori::CTermStackBase< NavigatorType, BaseType >::followThen (  )  [inline]

template<class NavigatorType, class BaseType = internal_tag>
void polybori::CTermStackBase< NavigatorType, BaseType >::markOne (  )  [inline]

template<class NavigatorType, class BaseType = internal_tag>
bool_type polybori::CTermStackBase< NavigatorType, BaseType >::markedOne (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
void polybori::CTermStackBase< NavigatorType, BaseType >::clearOne (  )  [inline]

template<class NavigatorType, class BaseType = internal_tag>
deg_type polybori::CTermStackBase< NavigatorType, BaseType >::deg (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
void polybori::CTermStackBase< NavigatorType, BaseType >::restart ( navigator  navi  )  [inline]

template<class NavigatorType, class BaseType = internal_tag>
bool polybori::CTermStackBase< NavigatorType, BaseType >::isOne (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
bool polybori::CTermStackBase< NavigatorType, BaseType >::isZero (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
bool polybori::CTermStackBase< NavigatorType, BaseType >::atBegin (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
bool polybori::CTermStackBase< NavigatorType, BaseType >::atEnd (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
bool polybori::CTermStackBase< NavigatorType, BaseType >::atEnd ( navigator  navi  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
bool polybori::CTermStackBase< NavigatorType, BaseType >::validEnd (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
bool polybori::CTermStackBase< NavigatorType, BaseType >::validEnd ( navigator  navi  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
void polybori::CTermStackBase< NavigatorType, BaseType >::print (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
stack_iterator polybori::CTermStackBase< NavigatorType, BaseType >::stackBegin (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
stack_iterator polybori::CTermStackBase< NavigatorType, BaseType >::stackEnd (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
stack_reverse_iterator polybori::CTermStackBase< NavigatorType, BaseType >::stackRBegin (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
stack_reverse_iterator polybori::CTermStackBase< NavigatorType, BaseType >::stackREnd (  )  const [inline]

template<class NavigatorType, class BaseType = internal_tag>
template<class TermStack>
void polybori::CTermStackBase< NavigatorType, BaseType >::append ( const TermStack &  rhs  )  [inline, protected]


Friends And Related Function Documentation

template<class NavigatorType, class BaseType = internal_tag>
friend class CTermStackBase [friend]


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

Generated on Wed Jan 30 16:39:53 2013 for PolyBoRi by  doxygen 1.5.6