Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

ixion::regex::matcher Class Template Reference

#include <ixlib_re.hh>

Inheritance diagram for ixion::regex::matcher::

ixion::regex::alternative_matcher ixion::regex::any_matcher ixion::regex::backref_close_matcher ixion::regex::backref_matcher ixion::regex::backref_open_matcher ixion::regex::end_matcher ixion::regex::quantifier ixion::regex::sequence_matcher ixion::regex::start_matcher List of all members.

Public Methods

 matcher ()
virtual ~matcher ()
virtual matcher* duplicate () const=0
TSize getMatchLength () const
TSize subsequentMatchLength () const
virtual TSize minimumMatchLength () const=0
TSize minimumSubsequentMatchLength () const
matcher* getNext () const
virtual void setNext (matcher *next, bool ownnext=true)
virtual bool match (backref_stack &brstack, T const &candidate, TIndex at)=0

Protected Methods

bool matchNext (backref_stack &brstack, T const &candidate, TIndex at) const
void copy (matcher const *src)

Protected Attributes

matcher* Next
bool OwnNext
TSize MatchLength

template<class T> class ixion::regex::matcher


Constructor & Destructor Documentation

ixion::regex::matcher::matcher ( )
 

virtual ixion::regex::matcher::~matcher ( ) [virtual]
 


Member Function Documentation

void ixion::regex::matcher::copy ( matcher const * src ) [protected]
 

virtual matcher* ixion::regex::matcher::duplicate ( ) const [pure virtual]
 

Reimplemented in ixion::regex::quantifier, ixion::regex::sequence_matcher, ixion::regex::any_matcher, ixion::regex::start_matcher, ixion::regex::end_matcher, ixion::regex::backref_open_matcher, ixion::regex::backref_close_matcher, ixion::regex::alternative_matcher, and ixion::regex::backref_matcher.

TSize ixion::regex::matcher::getMatchLength ( ) const [inline]
 

Definition at line 128 of file ixlib_re.hh.

matcher * ixion::regex::matcher::getNext ( ) const [inline]
 

Definition at line 135 of file ixlib_re.hh.

virtual bool ixion::regex::matcher::match ( backref_stack & brstack,
T const & candidate,
TIndex at ) [pure virtual]
 

Reimplemented in ixion::regex::quantifier, ixion::regex::sequence_matcher, ixion::regex::any_matcher, ixion::regex::start_matcher, ixion::regex::end_matcher, ixion::regex::backref_open_matcher, ixion::regex::backref_close_matcher, ixion::regex::alternative_matcher, and ixion::regex::backref_matcher.

bool ixion::regex::matcher::matchNext ( backref_stack & brstack,
T const & candidate,
TIndex at ) const [inline, protected]
 

Definition at line 148 of file ixlib_re.hh.

Referenced by ixion::regex::any_matcher::match().

virtual TSize ixion::regex::matcher::minimumMatchLength ( ) const [pure virtual]
 

Reimplemented in ixion::regex::quantifier, ixion::regex::sequence_matcher, ixion::regex::any_matcher, ixion::regex::start_matcher, ixion::regex::end_matcher, ixion::regex::backref_open_matcher, ixion::regex::backref_close_matcher, ixion::regex::alternative_matcher, and ixion::regex::backref_matcher.

TSize ixion::regex::matcher::minimumSubsequentMatchLength ( ) const
 

void ixion::regex::matcher::setNext ( matcher * next,
bool ownnext = true ) [inline, virtual]
 

Reimplemented in ixion::regex::alternative_matcher.

Definition at line 138 of file ixlib_re.hh.

TSize ixion::regex::matcher::subsequentMatchLength ( ) const
 


Member Data Documentation

TSize ixion::regex::matcher::MatchLength [protected]
 

Definition at line 120 of file ixlib_re.hh.

matcher* ixion::regex::matcher::Next [protected]
 

Definition at line 118 of file ixlib_re.hh.

bool ixion::regex::matcher::OwnNext [protected]
 

Definition at line 119 of file ixlib_re.hh.


The documentation for this class was generated from the following file:
Generated at Fri Jun 29 18:49:18 2001 for ixlib by doxygen1.2.6 written by Dimitri van Heesch, © 1997-2001