com.karneim.util.collection.set

Interface IState

public interface IState

IState is the epsilon enclosure of one or more {@link IStatePro}. The epsilon enclosure of an IStatePro are the IStatePro itself and all states that are reachable through epsilon transitions (see {@link IStatePro.addTransition}) beginning with that IStatePro.
You can get an epsilon enclosure of an IStatePro startState manually by this code:
final IStatePro startState;
final {@link StateProSet} epsilonClosure = new StateProSet(startState);
final {@link StateProSet.Iterator} it = states.iterator();
for (IStatePro state=it.next(); state!=null; state=it.next()) {
IStatePro.ITransition[] transitions = state.getETransitions();
for (int i=0; i transitions.length; ++i) {
epsilonClosure.add(transitions[i].getToState());
}
}
Description: Copyright: Copyright (c) 2001 Company:

Version: 1.0

Author:

Method Summary
StateProSetgetAllReachableStates()
Returns all states that are reachable from this state through it's transitions and so on.
booleanisFinal()
IStatenext(char ch)
returns the IState of all IStatePro that are reachable from this IState with a character ch.

Method Detail

getAllReachableStates

public StateProSet getAllReachableStates()
Returns all states that are reachable from this state through it's transitions and so on.
important: this state is only element of the returned set, if it is an element of a loop

Returns: all reachable states as a set

isFinal

public boolean isFinal()

next

public IState next(char ch)
returns the IState of all IStatePro that are reachable from this IState with a character ch.

Parameters: ch

Returns: