Class ElementMatcherProvider.TransitionMatcher<T extends IElementMatcherProvider.IElementPattern>
- java.lang.Object
-
- org.eclipse.xtext.formatting.impl.ElementMatcherProvider.TransitionMatcher<T>
-
- All Implemented Interfaces:
IElementMatcherProvider.IElementMatcher<T>
,IElementMatcherProvider.IElementMatcherExtension<T>
- Enclosing class:
- ElementMatcherProvider
protected static class ElementMatcherProvider.TransitionMatcher<T extends IElementMatcherProvider.IElementPattern> extends java.lang.Object implements IElementMatcherProvider.IElementMatcherExtension<T>
-
-
Field Summary
Fields Modifier and Type Field Description protected IGrammarAccess
grammar
protected MatcherState
lastState
protected MatcherNFAProvider
nfaProvider
protected java.util.Stack<MatcherState>
ruleCallStack
-
Constructor Summary
Constructors Constructor Description TransitionMatcher(IGrammarAccess grammar, MatcherNFAProvider nfaProvider, java.lang.Iterable<T> patterns)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.util.Set<MatcherState>
findRuleCallsTo(AbstractRule rule, java.util.Set<AbstractRule> visited)
org.eclipse.xtext.util.Pair<java.lang.Integer,RuleCall>
findTopmostRuleCall(com.google.common.base.Predicate<RuleCall> predicate)
protected org.eclipse.xtext.util.Pair<java.util.List<MatcherTransition>,java.util.List<MatcherState>>
findTransitionPath(MatcherState from, AbstractElement to, boolean returning, boolean canReturn, java.util.Set<org.eclipse.xtext.util.Pair<java.lang.Boolean,MatcherState>> visited)
protected java.util.List<MatcherTransition>
findTransitionsToToken(MatcherState from, java.util.Set<MatcherState> targets, boolean returning, boolean canReturn, java.util.Set<MatcherState> visited)
java.util.Collection<T>
finish()
protected java.util.Set<MatcherState>
getAllStates(AbstractElement element)
IGrammarAccess
getGrammar()
MatcherNFAProvider
getNfaProvider()
void
init(ParserRule rule)
protected void
installAfter(IElementMatcherProvider.IAfterElement pattern)
protected void
installAllPatterns(java.lang.Iterable<T> patterns)
protected void
installBefore(IElementMatcherProvider.IBeforeElement pattern)
protected void
installBetween(IElementMatcherProvider.IBetweenElements pattern)
protected void
installBetween(IElementMatcherProvider.IBetweenElements pattern, AbstractElement loopCenter)
protected void
installBetween(IElementMatcherProvider.IBetweenElements pattern, AbstractElement first, AbstractElement second)
java.util.Collection<T>
matchNext(AbstractElement nextElement)
protected java.util.Collection<T>
patternsForTransition(org.eclipse.xtext.util.Pair<java.util.List<MatcherTransition>,java.util.List<MatcherState>> transition)
protected java.util.Collection<T>
patternsForTwoStates(MatcherState first, MatcherState second)
-
-
-
Field Detail
-
grammar
protected IGrammarAccess grammar
-
lastState
protected MatcherState lastState
-
nfaProvider
protected MatcherNFAProvider nfaProvider
-
ruleCallStack
protected java.util.Stack<MatcherState> ruleCallStack
-
-
Constructor Detail
-
TransitionMatcher
public TransitionMatcher(IGrammarAccess grammar, MatcherNFAProvider nfaProvider, java.lang.Iterable<T> patterns)
-
-
Method Detail
-
findRuleCallsTo
protected java.util.Set<MatcherState> findRuleCallsTo(AbstractRule rule, java.util.Set<AbstractRule> visited)
-
findTopmostRuleCall
public org.eclipse.xtext.util.Pair<java.lang.Integer,RuleCall> findTopmostRuleCall(com.google.common.base.Predicate<RuleCall> predicate)
- Specified by:
findTopmostRuleCall
in interfaceIElementMatcherProvider.IElementMatcher<T extends IElementMatcherProvider.IElementPattern>
-
findTransitionPath
protected org.eclipse.xtext.util.Pair<java.util.List<MatcherTransition>,java.util.List<MatcherState>> findTransitionPath(MatcherState from, AbstractElement to, boolean returning, boolean canReturn, java.util.Set<org.eclipse.xtext.util.Pair<java.lang.Boolean,MatcherState>> visited)
-
findTransitionsToToken
protected java.util.List<MatcherTransition> findTransitionsToToken(MatcherState from, java.util.Set<MatcherState> targets, boolean returning, boolean canReturn, java.util.Set<MatcherState> visited)
-
finish
public java.util.Collection<T> finish()
- Specified by:
finish
in interfaceIElementMatcherProvider.IElementMatcher<T extends IElementMatcherProvider.IElementPattern>
-
getAllStates
protected java.util.Set<MatcherState> getAllStates(AbstractElement element)
-
getGrammar
public IGrammarAccess getGrammar()
-
getNfaProvider
public MatcherNFAProvider getNfaProvider()
-
installAfter
protected void installAfter(IElementMatcherProvider.IAfterElement pattern)
-
installAllPatterns
protected void installAllPatterns(java.lang.Iterable<T> patterns)
-
installBefore
protected void installBefore(IElementMatcherProvider.IBeforeElement pattern)
-
installBetween
protected void installBetween(IElementMatcherProvider.IBetweenElements pattern)
-
installBetween
protected void installBetween(IElementMatcherProvider.IBetweenElements pattern, AbstractElement loopCenter)
-
installBetween
protected void installBetween(IElementMatcherProvider.IBetweenElements pattern, AbstractElement first, AbstractElement second)
-
init
public void init(ParserRule rule)
- Specified by:
init
in interfaceIElementMatcherProvider.IElementMatcherExtension<T extends IElementMatcherProvider.IElementPattern>
- Since:
- 2.0
-
matchNext
public java.util.Collection<T> matchNext(AbstractElement nextElement)
- Specified by:
matchNext
in interfaceIElementMatcherProvider.IElementMatcher<T extends IElementMatcherProvider.IElementPattern>
-
patternsForTransition
protected java.util.Collection<T> patternsForTransition(org.eclipse.xtext.util.Pair<java.util.List<MatcherTransition>,java.util.List<MatcherState>> transition)
-
patternsForTwoStates
protected java.util.Collection<T> patternsForTwoStates(MatcherState first, MatcherState second)
-
-