org.eclipse.xtext.grammaranalysis.impl
Class AbstractPDAProvider<CTX>
java.lang.Object
org.eclipse.xtext.grammaranalysis.impl.AbstractPDAProvider<CTX>
- All Implemented Interfaces:
- IPDAProvider<CTX>
public abstract class AbstractPDAProvider<CTX>
- extends java.lang.Object
- implements IPDAProvider<CTX>
- Author:
- Moritz Eysholdt - Initial contribution and API
Method Summary |
protected abstract boolean |
canEnterRuleCall(INFAState<?,?> state)
|
protected abstract boolean |
canPass(CTX context,
INFAState<?,?> state,
org.eclipse.emf.ecore.EClass constructedType)
|
protected boolean |
canReachContextEnd(AbstractPDAProvider.PDAContext<CTX> context,
AbstractPDAProvider.RuleCallStackElement stack,
INFAState<?,?> fromNfa,
org.eclipse.emf.ecore.EClass constructedType,
boolean returning,
boolean canReturn,
java.util.Set<Pair<java.lang.Boolean,INFAState<?,?>>> visited)
|
protected AbstractPDAProvider.PDAContext<CTX> |
createContext(CTX obj)
|
protected AbstractPDAProvider.PDAState |
createState(AbstractPDAProvider.PDAContext<CTX> ctx,
AbstractPDAProvider.RuleCallStackElement stack,
INFAState<?,?> fromNfa,
org.eclipse.emf.ecore.EClass constructedType,
boolean returning,
boolean canReturn,
java.util.Set<Pair<java.lang.Boolean,INFAState<?,?>>> visited)
|
protected AbstractPDAProvider.PDAState |
createState(IPDAState.PDAStateType type,
AbstractElement element)
|
protected org.eclipse.emf.ecore.EClass |
getConstructedType(AbstractElement ele)
|
protected abstract java.util.List<INFAState<?,?>> |
getFollowers(CTX context,
INFAState<?,?> state,
boolean returning,
boolean canReturn)
|
IPDAState |
getPDA(CTX context)
|
protected abstract java.util.List<INFAState<?,?>> |
getStartFollowers(CTX context)
|
protected AbstractPDAProvider.PDAState |
getState(AbstractPDAProvider.PDAContext<CTX> ctx,
INFAState<?,?> state,
boolean returning)
|
protected abstract boolean |
isFinalState(CTX context,
INFAState<?,?> state,
boolean returning,
boolean canReturn)
|
protected AbstractPDAProvider.RuleCallStackElement |
stackPush(AbstractPDAProvider.RuleCallStackElement stack,
INFAState<?,?> value)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
AbstractPDAProvider
public AbstractPDAProvider()
canEnterRuleCall
protected abstract boolean canEnterRuleCall(INFAState<?,?> state)
canPass
protected abstract boolean canPass(CTX context,
INFAState<?,?> state,
org.eclipse.emf.ecore.EClass constructedType)
- Since:
- 2.0
getConstructedType
protected org.eclipse.emf.ecore.EClass getConstructedType(AbstractElement ele)
- Since:
- 2.0
canReachContextEnd
protected boolean canReachContextEnd(AbstractPDAProvider.PDAContext<CTX> context,
AbstractPDAProvider.RuleCallStackElement stack,
INFAState<?,?> fromNfa,
org.eclipse.emf.ecore.EClass constructedType,
boolean returning,
boolean canReturn,
java.util.Set<Pair<java.lang.Boolean,INFAState<?,?>>> visited)
createContext
protected AbstractPDAProvider.PDAContext<CTX> createContext(CTX obj)
- Since:
- 2.0
createState
protected AbstractPDAProvider.PDAState createState(IPDAState.PDAStateType type,
AbstractElement element)
createState
protected AbstractPDAProvider.PDAState createState(AbstractPDAProvider.PDAContext<CTX> ctx,
AbstractPDAProvider.RuleCallStackElement stack,
INFAState<?,?> fromNfa,
org.eclipse.emf.ecore.EClass constructedType,
boolean returning,
boolean canReturn,
java.util.Set<Pair<java.lang.Boolean,INFAState<?,?>>> visited)
- Since:
- 2.0
getPDA
public IPDAState getPDA(CTX context)
- Specified by:
getPDA
in interface IPDAProvider<CTX>
- Since:
- 2.0
getStartFollowers
protected abstract java.util.List<INFAState<?,?>> getStartFollowers(CTX context)
- Since:
- 2.0
getState
protected AbstractPDAProvider.PDAState getState(AbstractPDAProvider.PDAContext<CTX> ctx,
INFAState<?,?> state,
boolean returning)
isFinalState
protected abstract boolean isFinalState(CTX context,
INFAState<?,?> state,
boolean returning,
boolean canReturn)
getFollowers
protected abstract java.util.List<INFAState<?,?>> getFollowers(CTX context,
INFAState<?,?> state,
boolean returning,
boolean canReturn)
- Since:
- 2.0
stackPush
protected AbstractPDAProvider.RuleCallStackElement stackPush(AbstractPDAProvider.RuleCallStackElement stack,
INFAState<?,?> value)