org.eclipse.xtext.serializer.analysis
Class SyntacticSequencerPDAProvider
java.lang.Object
org.eclipse.xtext.serializer.analysis.SyntacticSequencerPDAProvider
- All Implemented Interfaces:
- ISyntacticSequencerPDAProvider
public class SyntacticSequencerPDAProvider
- extends java.lang.Object
- implements ISyntacticSequencerPDAProvider
- Author:
- Moritz Eysholdt - Initial contribution and API
Method Summary |
protected boolean |
canReachAbsorber(ISerState from,
ISerState to,
java.util.Set<ISerState> visited)
|
protected void |
collectFollowingAbsorberStates(ISerState state,
boolean collect,
java.util.Set<ISerState> visited,
java.util.Set<ISerState> absorber)
|
protected SyntacticSequencerPDAProvider.SynAbsorberState |
createAbsorberState(ISerState state,
java.util.Map<ISerState,SyntacticSequencerPDAProvider.SynAbsorberState> absorbers,
java.util.Map<SyntacticSequencerPDAProvider.SynAbsorberState,java.util.Map<ISerState,SyntacticSequencerPDAProvider.SynState>> emitters,
org.eclipse.emf.ecore.EObject context,
org.eclipse.emf.ecore.EClass eClass)
|
protected SyntacticSequencerPDAProvider.SynAbsorberState |
createAbsorberState(ISyntacticSequencerPDAProvider.SynStateType type,
AbstractElement element,
org.eclipse.emf.ecore.EObject context,
org.eclipse.emf.ecore.EClass eClass)
|
protected SyntacticSequencerPDAProvider.SynState |
createEmitterState(ISyntacticSequencerPDAProvider.SynStateType type,
AbstractElement element,
SyntacticSequencerPDAProvider.SynAbsorberState target)
|
protected java.util.List<ISyntacticSequencerPDAProvider.ISynState> |
createEmitterStates(ISerState from,
ISerState to,
SyntacticSequencerPDAProvider.SynAbsorberState target,
java.util.Map<ISerState,SyntacticSequencerPDAProvider.SynState> emitters)
|
protected SyntacticSequencerPDAProvider.SynTransition |
createTransition(SyntacticSequencerPDAProvider.SynAbsorberState source,
SyntacticSequencerPDAProvider.SynAbsorberState target)
|
ISyntacticSequencerPDAProvider.ISynAbsorberState |
getPDA(org.eclipse.emf.ecore.EObject context,
org.eclipse.emf.ecore.EClass type)
|
protected ISyntacticSequencerPDAProvider.SynStateType |
getType(ISerState state)
|
protected boolean |
isMandatoryAbsorber(AbstractElement ele)
|
protected boolean |
isOptionalAbsorber(AbstractElement ele)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
cache
protected java.util.Map<Pair<org.eclipse.emf.ecore.EObject,org.eclipse.emf.ecore.EClass>,ISyntacticSequencerPDAProvider.ISynAbsorberState> cache
pdaProvider
@Inject
protected ContextTypePDAProvider pdaProvider
SyntacticSequencerPDAProvider
public SyntacticSequencerPDAProvider()
canReachAbsorber
protected boolean canReachAbsorber(ISerState from,
ISerState to,
java.util.Set<ISerState> visited)
collectFollowingAbsorberStates
protected void collectFollowingAbsorberStates(ISerState state,
boolean collect,
java.util.Set<ISerState> visited,
java.util.Set<ISerState> absorber)
createAbsorberState
protected SyntacticSequencerPDAProvider.SynAbsorberState createAbsorberState(ISerState state,
java.util.Map<ISerState,SyntacticSequencerPDAProvider.SynAbsorberState> absorbers,
java.util.Map<SyntacticSequencerPDAProvider.SynAbsorberState,java.util.Map<ISerState,SyntacticSequencerPDAProvider.SynState>> emitters,
org.eclipse.emf.ecore.EObject context,
org.eclipse.emf.ecore.EClass eClass)
createAbsorberState
protected SyntacticSequencerPDAProvider.SynAbsorberState createAbsorberState(ISyntacticSequencerPDAProvider.SynStateType type,
AbstractElement element,
org.eclipse.emf.ecore.EObject context,
org.eclipse.emf.ecore.EClass eClass)
createEmitterState
protected SyntacticSequencerPDAProvider.SynState createEmitterState(ISyntacticSequencerPDAProvider.SynStateType type,
AbstractElement element,
SyntacticSequencerPDAProvider.SynAbsorberState target)
createEmitterStates
protected java.util.List<ISyntacticSequencerPDAProvider.ISynState> createEmitterStates(ISerState from,
ISerState to,
SyntacticSequencerPDAProvider.SynAbsorberState target,
java.util.Map<ISerState,SyntacticSequencerPDAProvider.SynState> emitters)
createTransition
protected SyntacticSequencerPDAProvider.SynTransition createTransition(SyntacticSequencerPDAProvider.SynAbsorberState source,
SyntacticSequencerPDAProvider.SynAbsorberState target)
getPDA
public ISyntacticSequencerPDAProvider.ISynAbsorberState getPDA(org.eclipse.emf.ecore.EObject context,
org.eclipse.emf.ecore.EClass type)
- Specified by:
getPDA
in interface ISyntacticSequencerPDAProvider
getType
protected ISyntacticSequencerPDAProvider.SynStateType getType(ISerState state)
isMandatoryAbsorber
protected boolean isMandatoryAbsorber(AbstractElement ele)
isOptionalAbsorber
protected boolean isOptionalAbsorber(AbstractElement ele)