public static class XSDParticleImpl.XSDNFA extends java.lang.Object implements XSDParticle.DFA
Modifier and Type | Class and Description |
---|---|
static class |
XSDParticleImpl.XSDNFA.StateImpl |
static class |
XSDParticleImpl.XSDNFA.TransitionImpl |
XSDParticle.DFA.State, XSDParticle.DFA.Transition
Modifier and Type | Field and Description |
---|---|
protected XSDParticleImpl.XSDNFA.StateImpl |
currentState |
protected java.util.Collection<XSDDiagnostic> |
diagnostics |
protected XSDParticleImpl.XSDNFA.StateImpl |
finalState |
protected XSDParticleImpl.XSDNFA.StateImpl |
initialState |
protected boolean |
isApproximate |
protected java.util.List<XSDParticle.DFA.State> |
states |
protected XSDParticleImpl.XSDNFA.TransitionImpl |
testTransition |
protected java.util.Set<XSDModelGroup> |
visitedModelGroups |
protected XSDElementDeclaration[] |
xsdElementDeclarations |
protected XSDParticle |
xsdParticle |
Modifier | Constructor and Description |
---|---|
protected |
XSDNFA(boolean isApproximate) |
|
XSDNFA(java.util.Set<XSDModelGroup> visitedModelGroups,
XSDParticle xsdParticle,
boolean isApproximate) |
protected |
XSDNFA(java.util.Set<XSDModelGroup> visitedModelGroups,
XSDParticle xsdParticle,
XSDTerm xsdTerm,
boolean isApproximate) |
|
XSDNFA(XSDParticle xsdParticle,
boolean isApproximate) |
protected |
XSDNFA(XSDParticleImpl.XSDNFA original,
boolean isApproximate) |
Modifier and Type | Method and Description |
---|---|
protected void |
checkBadTransitions() |
protected XSDDiagnostic |
checkOverlap(XSDElementDeclaration xsdElementDeclaration1,
XSDTerm xsdComponent2) |
XSDDiagnostic |
checkOverlap(XSDTerm xsdComponent1,
XSDTerm xsdComponent2) |
protected XSDDiagnostic |
checkOverlap(XSDWildcard xsdWildcard1,
XSDTerm xsdComponent2) |
int |
checksum() |
XSDParticle.DFA |
cloneDFA()
Creates a clone of the automaton.
|
void |
createFinalState() |
protected XSDParticleImpl.XSDNFA |
createPermutations(java.util.List<XSDParticle> particles,
java.util.List<XSDParticleImpl.XSDNFA> particleNFAs,
java.util.Map<java.util.List<XSDParticle>,XSDParticleImpl.XSDNFA> particlesToNFAMap) |
protected XSDParticleImpl.XSDNFA.StateImpl |
createState(XSDComponent associatedComponent) |
void |
determinize() |
void |
dump(java.io.PrintStream out) |
void |
epsilonClosure() |
static java.lang.String |
getComponentLabel(java.util.Collection<XSDComponent> xsdComponents) |
static java.lang.String |
getComponentLabel(XSDComponent xsdComponent) |
XSDParticle.DFA.State |
getCurrentState() |
java.util.Collection<XSDDiagnostic> |
getDiagnostics() |
XSDParticle.DFA.State |
getFinalState() |
XSDParticle.DFA.State |
getInitialState()
Returns the initial state of this automaton.
|
XSDParticle |
getParticle() |
java.util.List<XSDParticle.DFA.State> |
getStates()
Returns the list of states in this automaton.
|
protected void |
initialize(XSDComponent xsdComponent) |
boolean |
isApproximate()
Returns whether this DFA is an approximation of the content model.
|
boolean |
isEquivalent(XSDParticle.DFA.State s1,
XSDParticle.DFA.State s2) |
void |
minimize() |
void |
propagateStates(XSDParticleImpl.XSDNFA xsdNFA) |
void |
reset() |
protected java.util.List<XSDParticle.DFA.State> states
protected XSDParticleImpl.XSDNFA.StateImpl initialState
protected XSDParticleImpl.XSDNFA.StateImpl finalState
protected XSDParticle xsdParticle
protected XSDParticleImpl.XSDNFA.StateImpl currentState
protected java.util.Set<XSDModelGroup> visitedModelGroups
protected java.util.Collection<XSDDiagnostic> diagnostics
protected boolean isApproximate
protected XSDParticleImpl.XSDNFA.TransitionImpl testTransition
protected XSDElementDeclaration[] xsdElementDeclarations
protected XSDNFA(boolean isApproximate)
protected XSDNFA(java.util.Set<XSDModelGroup> visitedModelGroups, XSDParticle xsdParticle, XSDTerm xsdTerm, boolean isApproximate)
public XSDNFA(java.util.Set<XSDModelGroup> visitedModelGroups, XSDParticle xsdParticle, boolean isApproximate)
public XSDNFA(XSDParticle xsdParticle, boolean isApproximate)
protected XSDNFA(XSDParticleImpl.XSDNFA original, boolean isApproximate)
protected void checkBadTransitions()
protected XSDParticleImpl.XSDNFA.StateImpl createState(XSDComponent associatedComponent)
protected void initialize(XSDComponent xsdComponent)
protected XSDParticleImpl.XSDNFA createPermutations(java.util.List<XSDParticle> particles, java.util.List<XSDParticleImpl.XSDNFA> particleNFAs, java.util.Map<java.util.List<XSDParticle>,XSDParticleImpl.XSDNFA> particlesToNFAMap)
public boolean isApproximate()
XSDParticle.DFA
isApproximate
in interface XSDParticle.DFA
true
if this DFA is an approximation of the content model.public java.util.List<XSDParticle.DFA.State> getStates()
XSDParticle.DFA
getStates
in interface XSDParticle.DFA
public XSDParticle.DFA.State getInitialState()
XSDParticle.DFA
getInitialState
in interface XSDParticle.DFA
public XSDParticle.DFA.State getFinalState()
public XSDParticle getParticle()
public static java.lang.String getComponentLabel(java.util.Collection<XSDComponent> xsdComponents)
public static java.lang.String getComponentLabel(XSDComponent xsdComponent)
public void dump(java.io.PrintStream out)
public void epsilonClosure()
public void createFinalState()
public boolean isEquivalent(XSDParticle.DFA.State s1, XSDParticle.DFA.State s2)
public void minimize()
public int checksum()
public void determinize()
public XSDDiagnostic checkOverlap(XSDTerm xsdComponent1, XSDTerm xsdComponent2)
protected XSDDiagnostic checkOverlap(XSDElementDeclaration xsdElementDeclaration1, XSDTerm xsdComponent2)
protected XSDDiagnostic checkOverlap(XSDWildcard xsdWildcard1, XSDTerm xsdComponent2)
public void propagateStates(XSDParticleImpl.XSDNFA xsdNFA)
public java.util.Collection<XSDDiagnostic> getDiagnostics()
public XSDParticle.DFA.State getCurrentState()
public void reset()
public XSDParticle.DFA cloneDFA()
XSDParticle.DFA
cloneDFA
in interface XSDParticle.DFA