Implementation of the actual expression tree. More...
Public Types | |
enum | ExpType { ET_SYMBOL, ET_CONC, ET_OR, ET_STAR } |
Type of regular expression. More... | |
Public Member Functions | |
MiniModel::PosSet * | followpos (MiniModel::PosSetAllocator &, MiniModel::PosInfo *) |
Compute the follow positions. More... | |
template<class Char , class Traits > | |
std::basic_ostream< Char, Traits > & | print (std::basic_ostream< Char, Traits > &os) const |
Print expression. More... | |
Static Public Member Functions | |
static void | inc (Exp *e) |
Increment use counter of e. More... | |
static void | dec (Exp *e) |
Decrement use counter of e. More... | |
static int | n_pos (Exp *e) |
Return number of positions of e. More... | |
static void * | operator new (size_t) |
static void | operator delete (void *) |
Public Attributes | |
unsigned int | use_cnt |
Reference counter. More... | |
int | _n_pos |
Number of positions. More... | |
ExpType | type |
Type of regular expression. More... | |
union { | |
int symbol | |
Symbol. More... | |
Exp * kids [2] | |
Subexpressions. More... | |
} | data |
Symbol or subexpressions. More... | |
|
inline |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
std::basic_ostream< Char, Traits > & Gecode::REG::Exp::print | ( | std::basic_ostream< Char, Traits > & | os | ) | const |
|
inlinestatic |
|
inlinestatic |
union { ... } Gecode::REG::Exp::data |
Symbol or subexpressions.