Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

cmt_zero_one Class Reference

Inheritance diagram for cmt_zero_one:

Inheritance graph
[legend]
Collaboration diagram for cmt_zero_one:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 cmt_zero_one (cmt_regexp_node *n)
 ~cmt_zero_one ()
const cmt_regexp::iterator match (const cmt_string &text, int pos) const
void dump () const

Protected Attributes

cmt_regexp_node_node

Constructor & Destructor Documentation

cmt_zero_one::cmt_zero_one cmt_regexp_node n  ) 
 

Definition at line 532 of file cmt_regexp.cxx.

00532                                               : _node (n)
00533 {
00534 }

cmt_zero_one::~cmt_zero_one  ) 
 

Definition at line 536 of file cmt_regexp.cxx.

References _node.

00537 {
00538   delete _node;
00539 }


Member Function Documentation

void cmt_zero_one::dump  )  const [virtual]
 

Reimplemented from cmt_regexp_node.

Definition at line 564 of file cmt_regexp.cxx.

References _node, cmt_regexp_node::dump(), tab(), and tab_level.

00565 {
00566   tab (); cout << "zero_one (" << this << ") " << endl;
00567   if (_node != 0)
00568     {
00569       tab_level++;
00570       _node->dump ();
00571       tab_level--;
00572     }
00573 }

const cmt_regexp::iterator cmt_zero_one::match const cmt_string text,
int  pos
const [virtual]
 

Reimplemented from cmt_regexp_node.

Definition at line 541 of file cmt_regexp.cxx.

References cmt_regexp::iterator::_length, _node, cmt_regexp_node::match(), cmt_regexp::iterator::null(), and cmt_string::size().

00543 {
00544   if ((pos < 0) || (pos > text.size ())) 
00545     {
00546       return (cmt_regexp::iterator::null ());
00547     }
00548 
00549   int total = 0;
00550 
00551   if (pos < text.size ())
00552     {
00553       const cmt_regexp::iterator it = _node->match (text, pos);
00554       if (it != cmt_regexp::iterator::null ())
00555         {
00556           total += it._length;
00557           pos += it._length;
00558         }
00559     }
00560   
00561   return (cmt_regexp::iterator (pos, total));
00562 }


Member Data Documentation

cmt_regexp_node* cmt_zero_one::_node [protected]
 

Definition at line 132 of file cmt_regexp.cxx.

Referenced by dump(), match(), and ~cmt_zero_one().


The documentation for this class was generated from the following file:
Generated on Mon May 2 10:25:32 2005 for CMT by doxygen 1.3.5