fr.umlv.tatoo.runtime.tools
Class SingleVersionParserLookaheadActivator<R extends Enum<R>>

java.lang.Object
  extended by fr.umlv.tatoo.runtime.tools.SingleVersionParserLookaheadActivator<R>
All Implemented Interfaces:
RuleActivator<R>

public class SingleVersionParserLookaheadActivator<R extends Enum<R>>
extends Object
implements RuleActivator<R>

See Also:
ParserLookaheadActivator

Constructor Summary
SingleVersionParserLookaheadActivator(SimpleParser<?> parser, R[][] activatorRulesArray)
           
 
Method Summary
static
<R extends Enum<R>,T extends Enum<T>,V extends Enum<V>>
R[][]
activatorRulesArray(int stateNb, V version, LookaheadMap<T,V> lookaheadMap, Class<R> ruleClass, Set<? extends R> unconditionalRules, Map<R,? extends T> ruleToTerminalMap)
           
 R[] activeRules()
          Determines the set of active rules.
static
<F,S> Map<S,Set<F>>
inverse(Map<F,? extends S> firstToSecondMap)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SingleVersionParserLookaheadActivator

public SingleVersionParserLookaheadActivator(SimpleParser<?> parser,
                                             R[][] activatorRulesArray)
Method Detail

activeRules

public R[] activeRules()
Description copied from interface: RuleActivator
Determines the set of active rules. The method activateRules is called before the beginning of new token recognition. The returned list must be random access for efficiency

Specified by:
activeRules in interface RuleActivator<R extends Enum<R>>
Returns:
new set of active rules; must be random access

inverse

public static <F,S> Map<S,Set<F>> inverse(Map<F,? extends S> firstToSecondMap)

activatorRulesArray

public static <R extends Enum<R>,T extends Enum<T>,V extends Enum<V>> R[][] activatorRulesArray(int stateNb,
                                                                                                V version,
                                                                                                LookaheadMap<T,V> lookaheadMap,
                                                                                                Class<R> ruleClass,
                                                                                                Set<? extends R> unconditionalRules,
                                                                                                Map<R,? extends T> ruleToTerminalMap)