code: /*
  * generated by Xtext
  */
  package org.applause.lang.parser.antlr;
  
  import org.antlr.runtime.CharStream;
  import org.antlr.runtime.TokenSource;
  import org.eclipse.xtext.parser.IParseResult;
  import org.eclipse.xtext.parser.ParseException;
  import org.eclipse.xtext.parser.antlr.XtextTokenStream;
  
  import com.google.inject.Inject;
  
  import org.applause.lang.services.ApplauseDslGrammarAccess;
  
  public class ApplauseDslParser extends org.eclipse.xtext.parser.antlr.AbstractAntlrParser {
  	
  	@Inject
  	private ApplauseDslGrammarAccess grammarAccess;
  	
  	@Override
  	protected IParseResult parse(String ruleName, CharStream in) {
  		TokenSource tokenSource = createLexer(in);
  		XtextTokenStream tokenStream = createTokenStream(tokenSource);
  		tokenStream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT");
  		org.applause.lang.parser.antlr.internal.InternalApplauseDslParser parser = createParser(tokenStream);
  		parser.setTokenTypeMap(getTokenDefProvider().getTokenDefMap());
  		parser.setSyntaxErrorProvider(getSyntaxErrorProvider());
  		parser.setUnorderedGroupHelper(getUnorderedGroupHelper().get());
  		try {
  			if(ruleName != null)
  				return parser.parse(ruleName);
  			return parser.parse();
  		} catch (Exception re) {
  			throw new ParseException(re.getMessage(),re);
  		}
  	}
  	
  	protected org.applause.lang.parser.antlr.internal.InternalApplauseDslParser createParser(XtextTokenStream stream) {
  		return new org.applause.lang.parser.antlr.internal.InternalApplauseDslParser(stream, getElementFactory(), getGrammarAccess());
  	}
  	
  	@Override 
  	protected String getDefaultRuleName() {
  		return "Model";
  	}
  	
  	public ApplauseDslGrammarAccess getGrammarAccess() {
  		return this.grammarAccess;
  	}
  	
  	public void setGrammarAccess(ApplauseDslGrammarAccess grammarAccess) {
  		this.grammarAccess = grammarAccess;
  	}
  	
  }
  