#include <automaton.hpp>
Public Member Functions | |
automaton () | |
~automaton () | |
int | parse (const char *) |
int | match (const char *, int) |
int | getCurrentPos () |
void | setMinimal (bool) |
bool | getMinimal () |
Private Member Functions | |
int | expression () |
int | term () |
int | factor () |
int | set () |
int | letter (int) |
void | setState (int, int, int, int) |
int | insertSet (char *) |
int | checkRange (char *, int, char) |
Private Attributes | |
int * | ch |
int * | next1 |
int * | next2 |
int | final |
const char * | regexp |
int ** | setArray |
int | setSize |
int | size |
int | freeState |
int | currentPos |
bool | minimal |
Definition at line 50 of file automaton.hpp.
automaton::automaton | ( | ) |
automaton::~automaton | ( | ) |
|
private |
Definition at line 648 of file automaton.cpp.
Referenced by set().
|
private |
Definition at line 252 of file automaton.cpp.
References ch, currentPos, EPSILON, freeState, next2, regexp, setState(), and term().
|
private |
Definition at line 311 of file automaton.cpp.
References ANY, ch, currentPos, E_ILLEGAL_NUMBER, E_ILLEGAL_SET, E_MISSING_PAREN_CLOSE, E_UNEXPECTED_EOP, E_UNEXPECTED_SYMBOL, EPSILON, expression(), freeState, letter(), next1, next2, regexp, set(), setState(), and size.
Referenced by term().
|
inline |
Definition at line 61 of file automaton.hpp.
References currentPos.
Referenced by RexxMethod2(), and RexxMethod3().
|
inline |
|
private |
Definition at line 670 of file automaton.cpp.
References setArray, and setSize.
Referenced by set().
|
private |
Definition at line 222 of file automaton.cpp.
int automaton::match | ( | const char * | a, |
int | N | ||
) |
Definition at line 696 of file automaton.cpp.
References ANY, ch, currentPos, EOP, EPSILON, doubleQueue::isEmpty(), minimal, next1, next2, NOT, doubleQueue::pop(), doubleQueue::push(), doubleQueue::put(), SCAN, set(), SET, and setArray.
Referenced by RexxMethod2().
int automaton::parse | ( | const char * | regexp | ) |
Definition at line 117 of file automaton.cpp.
References ANY, ch, currentPos, EOP, EPSILON, expression(), freeState, minimal, next1, next2, NOT, regexp, SCAN, SET, setArray, setSize, setState(), and size.
Referenced by RexxMethod2(), and RexxMethod3().
|
private |
Definition at line 456 of file automaton.cpp.
References checkRange(), currentPos, E_ILLEGAL_SET, E_ILLEGAL_SYMBOLIC_NAME, freeState, insertSet(), NOT, regexp, SET, and setState().
void automaton::setMinimal | ( | bool | f | ) |
Definition at line 89 of file automaton.cpp.
References EOP, EPSILON, minimal, and setState().
Referenced by RexxMethod2(), and RexxMethod3().
|
private |
Definition at line 625 of file automaton.cpp.
References ch, next1, next2, and size.
Referenced by expression(), factor(), parse(), set(), setMinimal(), and term().
|
private |
Definition at line 280 of file automaton.cpp.
References currentPos, EPSILON, factor(), freeState, letter(), regexp, and setState().
Referenced by expression().
|
private |
Definition at line 81 of file automaton.hpp.
Referenced by automaton(), expression(), factor(), match(), parse(), setState(), and ~automaton().
|
private |
Definition at line 94 of file automaton.hpp.
Referenced by expression(), factor(), getCurrentPos(), match(), parse(), set(), and term().
|
private |
Definition at line 85 of file automaton.hpp.
|
private |
Definition at line 93 of file automaton.hpp.
Referenced by expression(), factor(), parse(), set(), and term().
|
private |
Definition at line 95 of file automaton.hpp.
Referenced by getMinimal(), match(), parse(), and setMinimal().
|
private |
Definition at line 82 of file automaton.hpp.
Referenced by automaton(), factor(), match(), parse(), setState(), and ~automaton().
|
private |
Definition at line 83 of file automaton.hpp.
Referenced by automaton(), expression(), factor(), match(), parse(), setState(), and ~automaton().
|
private |
Definition at line 87 of file automaton.hpp.
Referenced by expression(), factor(), parse(), set(), and term().
|
private |
Definition at line 89 of file automaton.hpp.
Referenced by insertSet(), match(), parse(), and ~automaton().
|
private |
Definition at line 90 of file automaton.hpp.
Referenced by insertSet(), parse(), and ~automaton().
|
private |
Definition at line 92 of file automaton.hpp.
Referenced by automaton(), factor(), parse(), setState(), and ~automaton().