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>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static class
AbstractPDAProvider.PDAContext<CTX>
protected static class
AbstractPDAProvider.PDAState
protected static class
AbstractPDAProvider.RuleCallStackElement
-
Constructor Summary
Constructors Constructor Description AbstractPDAProvider()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description 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<org.eclipse.xtext.util.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<org.eclipse.xtext.util.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)
-
-
-
Method Detail
-
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<org.eclipse.xtext.util.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<org.eclipse.xtext.util.Pair<java.lang.Boolean,INFAState<?,?>>> visited)
- Since:
- 2.0
-
getPDA
public IPDAState getPDA(CTX context)
- Specified by:
getPDA
in interfaceIPDAProvider<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)
-
-