|
jET |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object | +--prv.doman.fsa.Automaton
The automaton is a short for FSA (finit state automaton).
| Nested Class Summary | |
class |
Automaton.Rule
This is a rule for finite state automaton. |
| Constructor Summary | |
Automaton()
Creates the new finit state automaton. |
|
| Method Summary | |
void |
addDefaultRule(java.lang.String startState,
java.lang.String endState)
Adds new rule that is default for transitions between start state and end state. |
void |
addLetter(java.lang.String letter)
Adds a letter to the alphabet. |
void |
addRule(java.lang.String letter,
java.lang.String startState,
java.lang.String endState)
Adds a transition between states as result of occuring some letter from alphabet at input. |
void |
addState(java.lang.String stateName)
Adds a new state for automaton. |
java.lang.String |
currentState()
Retrives current state name. |
java.lang.String[] |
getAlphabet()
Gets alphabet. |
boolean |
hasLetter(java.lang.String letter)
Checks if letter is in alphabet. |
boolean |
isFinished()
Checks if current state is final state. |
void |
setFinal(java.lang.String stateName)
Sets state as final state. |
void |
setStart(java.lang.String stateName)
Sets start state. |
java.lang.String[] |
stateNames()
Gets all state names. |
void |
step(java.lang.String letter)
Makes a step. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public Automaton()
| Method Detail |
public void addLetter(java.lang.String letter)
letter - New letter to add.
public void addState(java.lang.String stateName)
throws StateRedefinitionException
stateName - Name of the new state.
StateRedefinitionException - Thrown when adding state
already exists in the set of states.
public void addRule(java.lang.String letter,
java.lang.String startState,
java.lang.String endState)
throws UnknownLetterException,
UnknownStateException
letter - Input.startState - Start state name.endState - End state name determined by input and start name.
UnknownLetterException - Thrown when letter is not in
automaton's alphabet.
UnknownStateException - Thrown when start state or end state
are not in set of states.
public void addDefaultRule(java.lang.String startState,
java.lang.String endState)
throws UnknownStateException
startState - Start state name.endState - End state name determined by input and start name.
UnknownStateException - Thrown when start state or end state
are not in set of states.
public void setFinal(java.lang.String stateName)
throws UnknownStateException
State must be earlier added to set of states.
stateName - Name of state to be final.
UnknownStateException - Thrown when set of states
does not include this state.
public void setStart(java.lang.String stateName)
throws UnknownStateException
State must have been added to set of states.
stateName - Name of state.
UnknownStateException - Thrown when set of states
does not include this start state.
public void step(java.lang.String letter)
throws UnknownLetterException,
FinalStateMissingException
letter - Input.
UnknownLetterException - Thrown when letter is not from
alphabet.
FinalStateMissing - Thrown when automaton does not have at least
one final state.
FinalStateMissingExceptionpublic java.lang.String currentState()
public boolean hasLetter(java.lang.String letter)
letter is in alphabet.
letter - Letter to check.
True, if alphabet contains this letter.public java.lang.String[] stateNames()
public boolean isFinished()
True, if current state is final.public java.lang.String[] getAlphabet()
|
jET |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||