org.eclipse.xtext.util.formallang
Class PdaUtil
java.lang.Object
org.eclipse.xtext.util.formallang.PdaUtil
public class PdaUtil
- extends java.lang.Object
- Author:
- Moritz Eysholdt - Initial contribution and API
Method Summary |
|
canReach(Pda<S,P> pda,
S state,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches,
com.google.common.base.Predicate<S> canPass)
|
protected
|
createStack(java.util.Iterator<T> stack)
|
|
distanceTo(Pda<S,P> pda,
java.lang.Iterable<S> starts,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches,
com.google.common.base.Predicate<S> canPass)
|
|
filterUnambiguousPaths(Pda<S,P> pda)
|
protected
|
filterUnambiguousPaths(Pda<S,P> pda,
S state,
java.util.Map<S,java.lang.Integer> dist,
java.util.Map<S,java.util.List<S>> followers)
|
|
shortestPathTo(Pda<S,P> pda,
java.lang.Iterable<S> starts,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches,
com.google.common.base.Predicate<S> canPass)
|
|
shortestPathTo(Pda<S,P> pda,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches)
|
|
shortestPathTo(Pda<S,P> pda,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches,
com.google.common.base.Predicate<S> canPass)
|
|
shortestPathTo(Pda<S,P> pda,
java.util.Iterator<P> stack,
S match)
|
|
shortestPathTo(Pda<S,P> pda,
S start,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches,
com.google.common.base.Predicate<S> canPass)
|
|
shortestPathToFinalState(Pda<S,P> pda,
java.util.Iterator<P> stack)
|
|
shortestStackpruningPathTo(Pda<S,P> pda,
java.lang.Iterable<S> starts,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches,
com.google.common.base.Predicate<S> canPass)
|
|
shortestStackpruningPathTo(Pda<S,P> pda,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches)
|
|
shortestStackpruningPathTo(Pda<S,P> pda,
java.util.Iterator<P> stack,
S matches)
|
|
shortestStackpruningPathTo(Pda<S,P> pda,
S start,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches,
com.google.common.base.Predicate<S> canPass)
|
protected
|
trace(Pda<S,P> pda,
java.lang.Iterable<S> starts,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches,
com.google.common.base.Predicate<S> canPass)
|
protected
|
traceToWithPruningStack(Pda<S,P> pda,
java.lang.Iterable<S> starts,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches,
com.google.common.base.Predicate<S> canPass)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
nfaUtil
@Inject
protected NfaUtil nfaUtil
UNREACHABLE
public final long UNREACHABLE
- See Also:
- Constant Field Values
PdaUtil
public PdaUtil()
canReach
public <S,P> boolean canReach(Pda<S,P> pda,
S state,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches,
com.google.common.base.Predicate<S> canPass)
createStack
protected <T> PdaUtil.StackItem<T> createStack(java.util.Iterator<T> stack)
distanceTo
public <S,P> long distanceTo(Pda<S,P> pda,
java.lang.Iterable<S> starts,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches,
com.google.common.base.Predicate<S> canPass)
filterUnambiguousPaths
public <S,P> Nfa<S> filterUnambiguousPaths(Pda<S,P> pda)
filterUnambiguousPaths
protected <S,P> void filterUnambiguousPaths(Pda<S,P> pda,
S state,
java.util.Map<S,java.lang.Integer> dist,
java.util.Map<S,java.util.List<S>> followers)
shortestPathTo
public <S,P> java.util.List<S> shortestPathTo(Pda<S,P> pda,
java.lang.Iterable<S> starts,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches,
com.google.common.base.Predicate<S> canPass)
shortestPathTo
public <S,P> java.util.List<S> shortestPathTo(Pda<S,P> pda,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches)
shortestPathTo
public <S,P> java.util.List<S> shortestPathTo(Pda<S,P> pda,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches,
com.google.common.base.Predicate<S> canPass)
shortestPathTo
public <S,P> java.util.List<S> shortestPathTo(Pda<S,P> pda,
java.util.Iterator<P> stack,
S match)
shortestPathTo
public <S,P> java.util.List<S> shortestPathTo(Pda<S,P> pda,
S start,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches,
com.google.common.base.Predicate<S> canPass)
shortestPathToFinalState
public <S,P> java.util.List<S> shortestPathToFinalState(Pda<S,P> pda,
java.util.Iterator<P> stack)
shortestStackpruningPathTo
public <S,P> java.util.List<S> shortestStackpruningPathTo(Pda<S,P> pda,
java.lang.Iterable<S> starts,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches,
com.google.common.base.Predicate<S> canPass)
shortestStackpruningPathTo
public <S,P> java.util.List<S> shortestStackpruningPathTo(Pda<S,P> pda,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches)
shortestStackpruningPathTo
public <S,P> java.util.List<S> shortestStackpruningPathTo(Pda<S,P> pda,
java.util.Iterator<P> stack,
S matches)
shortestStackpruningPathTo
public <S,P> java.util.List<S> shortestStackpruningPathTo(Pda<S,P> pda,
S start,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches,
com.google.common.base.Predicate<S> canPass)
trace
protected <S,P> PdaUtil.TraceItem<S,P> trace(Pda<S,P> pda,
java.lang.Iterable<S> starts,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches,
com.google.common.base.Predicate<S> canPass)
traceToWithPruningStack
protected <S,P> PdaUtil.TraceItem<S,P> traceToWithPruningStack(Pda<S,P> pda,
java.lang.Iterable<S> starts,
java.util.Iterator<P> stack,
com.google.common.base.Predicate<S> matches,
com.google.common.base.Predicate<S> canPass)