| 
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||
java.lang.Objectcom.saxonica.fsa.AutomatonState
public abstract class AutomatonState
Defines a state of a finite state machine used when validating an instance against a complex type. Each State knows about the possible transitions to other states, and knows whether it is a final state. The initial state is referenced from the FiniteStateMachine object, which is itself a property of the UserComplexType against which validation is being performed.
This class is designed for internal use only.
| Field Summary | |
|---|---|
static Edge[] | 
EMPTY_EDGE_ARRAY
 | 
| Constructor Summary | |
|---|---|
AutomatonState(FiniteStateMachine machine)
Create a new state  | 
|
| Method Summary | |
|---|---|
 void | 
addWildcardTransition(Edge transition)
Add a wildcard transition from this state to another state.  | 
 void | 
display(HashMap map)
Display the finite state machine reachable from this state.  | 
 void | 
displayLambdaTransitions()
 | 
 void | 
displayState()
Display the finite state machine reachable from this state.  | 
 Iterator | 
getEdges()
Get an iterator over all the transitions (edges) allowed from this state  | 
 Edge | 
getSpecificTransition(int token)
Get a specific transition if there is one  | 
 Edge | 
getTransition(int token,
              NamePool pool)
Find the edge representing the transition from this state to another state, that is triggered by a given input token  | 
 Edge[] | 
getWildcardEdges()
Get an iterator over the wildcard transitions (edges) allowed from this state.  | 
 boolean | 
isFinalState()
Test whether this state is a final state  | 
 CharSequence | 
listAllowedElements()
List the allowed elements in this state as a string, for use in error messages  | 
 void | 
setFinalState(boolean finalState)
Set this state to be (or not to be) a final state  | 
| Methods inherited from class java.lang.Object | 
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Field Detail | 
|---|
public static final Edge[] EMPTY_EDGE_ARRAY
| Constructor Detail | 
|---|
public AutomatonState(FiniteStateMachine machine)
machine - | Method Detail | 
|---|
public boolean isFinalState()
public void setFinalState(boolean finalState)
finalState - true if this state is final
public void addWildcardTransition(Edge transition)
                           throws SchemaException
transition - the edge representing the transition
SchemaException
public Edge getTransition(int token,
                          NamePool pool)
token - the input token, specifically the fingerprint of an element name
public Edge getSpecificTransition(int token)
public CharSequence listAllowedElements()
public Edge[] getWildcardEdges()
Edge objects.public Iterator getEdges()
Edge objects.public void display(HashMap map)
map - a Hashmap mapping states already processed to the integer values used to represent that state.
 The method should be called initially with an empty map.public void displayState()
public void displayLambdaTransitions()
  | 
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||