src
Public Member Functions | Static Public Attributes | Friends | List of all members
re2c::RegExp Class Referenceabstract

#include <regexp.h>

Inheritance diagram for re2c::RegExp:
Inheritance graph
[legend]
Collaboration diagram for re2c::RegExp:
Collaboration graph
[legend]

Public Member Functions

 RegExp ()
 
virtual ~RegExp ()
 
virtual void split (std::set< uint32_t > &)=0
 
virtual uint32_t calc_size () const =0
 
virtual uint32_t fixedLength ()
 
virtual nfa_state_tcompile (nfa_t &nfa, nfa_state_t *n)=0
 
virtual void display (std::ostream &) const =0
 
 FORBID_COPY (RegExp)
 

Static Public Attributes

static free_list< RegExp * > vFreeList
 

Friends

std::ostream & operator<< (std::ostream &o, const RegExp &re)
 

Detailed Description

Definition at line 20 of file regexp.h.

Constructor & Destructor Documentation

re2c::RegExp::RegExp ( )
inline

Definition at line 25 of file regexp.h.

26  {
27  vFreeList.insert (this);
28  }
static free_list< RegExp * > vFreeList
Definition: regexp.h:23
virtual re2c::RegExp::~RegExp ( )
inlinevirtual

Definition at line 29 of file regexp.h.

30  {
31  vFreeList.erase (this);
32  }
static free_list< RegExp * > vFreeList
Definition: regexp.h:23

Here is the call graph for this function:

Member Function Documentation

virtual uint32_t re2c::RegExp::calc_size ( ) const
pure virtual

Implemented in re2c::RuleOp, re2c::AltOp, re2c::CatOp, re2c::MatchOp, re2c::CloseOp, and re2c::NullOp.

Here is the caller graph for this function:

virtual nfa_state_t* re2c::RegExp::compile ( nfa_t nfa,
nfa_state_t n 
)
pure virtual

Implemented in re2c::RuleOp, re2c::AltOp, re2c::CatOp, re2c::MatchOp, re2c::CloseOp, and re2c::NullOp.

Here is the caller graph for this function:

virtual void re2c::RegExp::display ( std::ostream &  ) const
pure virtual

Implemented in re2c::RuleOp, re2c::AltOp, re2c::CatOp, re2c::MatchOp, re2c::CloseOp, and re2c::NullOp.

Here is the caller graph for this function:

uint32_t re2c::RegExp::fixedLength ( )
virtual

Reimplemented in re2c::AltOp, re2c::CatOp, re2c::MatchOp, and re2c::NullOp.

Definition at line 12 of file fixed_length.cc.

13 {
14  return ~0u;
15 }

Here is the caller graph for this function:

re2c::RegExp::FORBID_COPY ( RegExp  )
virtual void re2c::RegExp::split ( std::set< uint32_t > &  )
pure virtual

Implemented in re2c::RuleOp, re2c::AltOp, re2c::CatOp, re2c::MatchOp, re2c::CloseOp, and re2c::NullOp.

Here is the caller graph for this function:

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  o,
const RegExp re 
)
friend

Definition at line 14 of file display.cc.

15 {
16  re.display (o);
17  return o;
18 }

Member Data Documentation

free_list< RegExp * > re2c::RegExp::vFreeList
static

Definition at line 23 of file regexp.h.


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