#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) |
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 737 of file automaton.cpp.
Referenced by set().
|
private |
Definition at line 325 of file automaton.cpp.
References ch, currentPos, EPSILON, freeState, next2, regexp, setState(), and term().
|
private |
Definition at line 387 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 759 of file automaton.cpp.
References setArray, and setSize.
Referenced by set().
|
private |
Definition at line 293 of file automaton.cpp.
int automaton::match | ( | const char * | a, |
int | N | ||
) |
Definition at line 783 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 191 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 545 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 90 of file automaton.cpp.
References EOP, EPSILON, minimal, and setState().
Referenced by RexxMethod2(), and RexxMethod3().
|
private |
Definition at line 714 of file automaton.cpp.
References ch, next1, next2, and size.
Referenced by expression(), factor(), parse(), set(), and setMinimal().
|
private |
Definition at line 355 of file automaton.cpp.
References currentPos, factor(), letter(), and regexp.
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(), and set().
|
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().