org.eclipse.xtext.generator.parser.antlr.ex.wsAware
Class SyntheticTerminalAwareFragmentHelper

java.lang.Object
  extended by org.eclipse.xtext.generator.parser.antlr.ex.common.AntlrFragmentHelper
      extended by org.eclipse.xtext.generator.parser.antlr.ex.wsAware.SyntheticTerminalAwareFragmentHelper

public class SyntheticTerminalAwareFragmentHelper
extends AntlrFragmentHelper

This fragment helper could be used to implement whitespace aware grammars.

Author:
Sebastian Zarnekow - Initial contribution and API

Constructor Summary
SyntheticTerminalAwareFragmentHelper(Naming naming)
           
 
Method Summary
 boolean isSyntheticTerminalRule(TerminalRule rule)
          Synthetic terminal rules are rules which will not lead to a real terminal rule in the generated lexer grammar but only provide the respective token types instead.
 
Methods inherited from class org.eclipse.xtext.generator.parser.antlr.ex.common.AntlrFragmentHelper
getAllAlternatives, getAllAssignments, getAllElementsByType, getAllGroups, getAllPredicatedElements, getAllUnorderedGroups, getAntlrTokenFileProviderClassName, getContentAssistLexerGrammarFileName, getContentAssistLexerSuperClass, getContentAssistParserClassName, getContentAssistParserGrammarFileName, getInternalContentAssistLexerClassName, getInternalContentAssistParserClassName, getInternalParserClassName, getLexerClassName, getLexerGrammarFileName, getLexerSuperClass, getParserClassName, getParserGrammarFileName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SyntheticTerminalAwareFragmentHelper

public SyntheticTerminalAwareFragmentHelper(Naming naming)
Method Detail

isSyntheticTerminalRule

public boolean isSyntheticTerminalRule(TerminalRule rule)
Synthetic terminal rules are rules which will not lead to a real terminal rule in the generated lexer grammar but only provide the respective token types instead.

This implementation answers true for any terminal rule that has a body in the form terminal MY_TERMINAL: 'synthetic:MY_TERMINAL';.

Overrides:
isSyntheticTerminalRule in class AntlrFragmentHelper
Returns:
true if this rule should not get an own lexer body.