org.eclipse.xtext.grammaranalysis.impl
Class AbstractCachingNFABuilder<S,T>

java.lang.Object
  extended by org.eclipse.xtext.grammaranalysis.impl.AbstractCachingNFABuilder<S,T>
All Implemented Interfaces:
IGrammarNFAProvider.NFABuilder<S,T>
Direct Known Subclasses:
ActionFilterNFAProvider.ActionFilterNFABuilder, DefaultBackwardNFAProvider.DefaultBackwardsNFABuilder, DefaultForwardNFAProvider.DefaultForwardsNFABuilder, MatcherNFAProvider.MatcherNFABuilder, SyntacticSequencerPDAProvider.SequencerNFAProvider.SequencerNFABuilder, TreeConstructionNFAProvider.TreeConstNFABuilder, TypeFinderNFAProvider.TypeFinderNFABuilder

public abstract class AbstractCachingNFABuilder<S,T>
extends java.lang.Object
implements IGrammarNFAProvider.NFABuilder<S,T>

Author:
Moritz Eysholdt - Initial contribution and API

Constructor Summary
AbstractCachingNFABuilder()
           
 
Method Summary
protected abstract  S createState(AbstractElement ele)
           
protected abstract  T createTransition(S source, S target, boolean isRuleCall, AbstractElement loopCenter)
           
 boolean filter(AbstractElement ele)
           
 S getState(AbstractElement ele)
           
 T getTransition(S source, S target, boolean isRuleCall, AbstractElement loopCenter)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.xtext.grammaranalysis.IGrammarNFAProvider.NFABuilder
getDirection
 

Constructor Detail

AbstractCachingNFABuilder

public AbstractCachingNFABuilder()
Method Detail

createState

protected abstract S createState(AbstractElement ele)

createTransition

protected abstract T createTransition(S source,
                                      S target,
                                      boolean isRuleCall,
                                      AbstractElement loopCenter)

filter

public boolean filter(AbstractElement ele)
Specified by:
filter in interface IGrammarNFAProvider.NFABuilder<S,T>

getState

public final S getState(AbstractElement ele)
Specified by:
getState in interface IGrammarNFAProvider.NFABuilder<S,T>

getTransition

public final T getTransition(S source,
                             S target,
                             boolean isRuleCall,
                             AbstractElement loopCenter)
Specified by:
getTransition in interface IGrammarNFAProvider.NFABuilder<S,T>