Package com.saxonica.ee.schema.fsa
Class CountingState
- java.lang.Object
-
- com.saxonica.ee.schema.fsa.CountingState
-
-
Constructor Summary
Constructors Constructor Description CountingState(AutomatonState as, int startFrom)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(java.lang.Object obj)java.util.Iterator<Edge>getEdges()Get an iterator over all the transitions (edges) allowed from this stateEdgegetTransition(int token, UserComplexType type)Find the edge representing the transition from this state to another state, that is triggered by a given input tokenAutomatonStategetUnderlyingState()Edge[]getWildcardEdges()Get an iterator over the wildcard transitions (edges) allowed from this state.inthashCode()StateincrementCounter()booleanisFinalState()Ask whether this state is a valid final state, that is, no further transitions are needed to complete a successful path through the finite state machinejava.lang.CharSequencelistAllowedElements()Construct a human-readable message explaining what elements are permitted as transitions from this statevoidtestMinimumReached()
-
-
-
Constructor Detail
-
CountingState
public CountingState(AutomatonState as, int startFrom)
-
-
Method Detail
-
incrementCounter
public State incrementCounter() throws ValidationException
- Throws:
ValidationException
-
testMinimumReached
public void testMinimumReached() throws ValidationException- Throws:
ValidationException
-
getTransition
public Edge getTransition(int token, UserComplexType type)
Description copied from interface:StateFind the edge representing the transition from this state to another state, that is triggered by a given input token- Specified by:
getTransitionin interfaceState- Parameters:
token- the input token, specifically the fingerprint of an element nametype- the complex type whose content model we are validating against- Returns:
- the Edge representing the selected transition of the finite state machine, or null if this token is not accepted when in this State (which implies a validation error).
-
isFinalState
public boolean isFinalState()
Description copied from interface:StateAsk whether this state is a valid final state, that is, no further transitions are needed to complete a successful path through the finite state machine- Specified by:
isFinalStatein interfaceState- Returns:
- true if this is a valid final state
-
getUnderlyingState
public AutomatonState getUnderlyingState()
-
listAllowedElements
public java.lang.CharSequence listAllowedElements()
Description copied from interface:StateConstruct a human-readable message explaining what elements are permitted as transitions from this state- Specified by:
listAllowedElementsin interfaceState- Returns:
- A message indicating what elements may come next
-
getWildcardEdges
public Edge[] getWildcardEdges()
Get an iterator over the wildcard transitions (edges) allowed from this state.- Specified by:
getWildcardEdgesin interfaceState- Returns:
- an Iterator over the edges that represent element wildcards. The objects
returned by this Iterator are
Edgeobjects.
-
getEdges
public java.util.Iterator<Edge> getEdges()
Get an iterator over all the transitions (edges) allowed from this state
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equalsin classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
-