/** the generated parser, with debugging messages. Maintains a dynamic state and value stack. @param yyLex scanner. @param ayydebug debug message writer implementing <tt>yyDebug</tt>, or <tt>null</tt>. @return result of the last reduction, if any. */ public Object yyparse (RubyLexer yyLex, Object ayydebug) throws java.io.IOException { this.yydebug = (org.jruby.parser.YYDebug) ayydebug; return yyparse(yyLex); }
RubyParser parser = new RubyParser(lexerSource, runtime.getWarnings()); RubyParserResult result; try { result = parser.parse(configuration); if (parser.lexer.isEndSeen() && configuration.isSaveData()) { IRubyObject verbose = runtime.getVerbose();
RubyParser parser = RubyParserPool.getInstance().borrowParser(configuration.getVersion()); RubyParserResult result = null; parser.setWarnings(runtime.getWarnings()); try { result = parser.parse(configuration, lexerSource); if (result.getEndOffset() >= 0 && configuration.isSaveData()) { IRubyObject verbose = runtime.getVerbose();
yydebug.lex(yyState, yyToken, yyName(yyToken), yyLex.value()); support.yyerror("syntax error", yyExpecting(yyState), yyNames[yyToken]); if (yydebug != null) yydebug.error("syntax error"); yydebug.discard(yyState, yyToken, yyName(yyToken), yyLex.value()); yyToken = -1; ParserState state = states[yyN]; if (state == null) { yyVal = yyDefault(yyV > yyTop ? null : yyVals[yyV]); } else { yyVal = state.execute(support, lexer, yyVal, yyVals, yyTop); yydebug.lex(yyState, yyToken,yyName(yyToken), yyLex.value());
RubyParser parser = new RubyParser(lexerSource, runtime.getWarnings()); RubyParserResult result; try { result = parser.parse(configuration); if (parser.lexer.isEndSeen() && configuration.isSaveData()) { IRubyObject verbose = runtime.getVerbose();
RubyParser parser = RubyParserPool.getInstance().borrowParser(configuration.getVersion()); RubyParserResult result = null; parser.setWarnings(runtime.getWarnings()); try { result = parser.parse(configuration, lexerSource); if (result.getEndOffset() >= 0 && configuration.isSaveData()) { IRubyObject verbose = runtime.getVerbose();
yydebug.lex(yyState, yyToken, yyName(yyToken), yyLex.value()); support.yyerror("syntax error", yyExpecting(yyState), yyNames[yyToken]); if (yydebug != null) yydebug.error("syntax error"); yydebug.discard(yyState, yyToken, yyName(yyToken), yyLex.value()); yyToken = -1; ParserState state = states[yyN]; if (state == null) { yyVal = yyDefault(yyV > yyTop ? null : yyVals[yyV]); } else { yyVal = state.execute(support, lexer, yyVal, yyVals, yyTop); yydebug.lex(yyState, yyToken,yyName(yyToken), yyLex.value());
/** the generated parser, with debugging messages. Maintains a dynamic state and value stack. @param yyLex scanner. @param ayydebug debug message writer implementing <tt>yyDebug</tt>, or <tt>null</tt>. @return result of the last reduction, if any. */ public Object yyparse (RubyLexer yyLex, Object ayydebug) throws java.io.IOException { this.yydebug = (org.jruby.parser.YYDebug) ayydebug; return yyparse(yyLex); }
/** The parse method use an lexer stream and parse it to an AST node * structure */ public RubyParserResult parse(ParserConfiguration configuration) throws IOException { support.reset(); support.setConfiguration(configuration); support.setResult(new RubyParserResult()); yyparse(lexer, configuration.isDebug() ? new YYDebug() : null); return support.getResult(); } }
/** The parse method use an lexer stream and parse it to an AST node * structure */ public RubyParserResult parse(ParserConfiguration configuration) throws IOException { support.reset(); support.setConfiguration(configuration); support.setResult(new RubyParserResult()); yyparse(lexer, configuration.isDebug() ? new YYDebug() : null); return support.getResult(); } }