java: let the Context give access to yyntokens

* data/skeletons/lalr1.java (Context.yytokens): New.
This commit is contained in:
Akim Demaille
2020-02-08 15:52:42 +01:00
parent 18a7cfc7cf
commit 0c90c59795

View File

@@ -855,7 +855,7 @@ b4_dollar_popdef[]dnl
} }
]])[ ]])[
public final class Context public static final class Context
{ {
public YYStack yystack; public YYStack yystack;
public int yytoken; public int yytoken;
@@ -1027,22 +1027,24 @@ b4_dollar_popdef[]dnl
First, the terminals, then, starting at \a yyntokens_, nonterminals. */ First, the terminals, then, starting at \a yyntokens_, nonterminals. */
]b4_typed_parser_table_define([String], [tname], [b4_tname])[ ]b4_typed_parser_table_define([String], [tname], [b4_tname])[
/* The user-facing name of the symbol whose (internal) number is
YYSYMBOL. No bounds checking. */
static String yysymbolName (int yysymbol) static String yysymbolName (int yysymbol)
{ {
return yytnamerr_ (yytname_[yysymbol]); return yytnamerr_ (yytname_[yysymbol]);
} }
]], ]],
[custom\|detailed], [custom\|detailed],
[[/* The user-facing name of the symbol whose (internal) number is [[ /* The user-facing name of the symbol whose (internal) number is
YYSYMBOL. No bounds checking. */ YYSYMBOL. No bounds checking. */
static String yysymbolName (int yysymbol) static String yysymbolName (int yysymbol)
{
String[] yy_sname =
{ {
]b4_symbol_names[ String[] yy_sname =
}; {
return yy_sname[yysymbol]; ]b4_symbol_names[
}]])[ };
return yy_sname[yysymbol];
}]])[
]b4_parse_trace_if([[ ]b4_parse_trace_if([[
]b4_integral_parser_table_define([rline], [b4_rline], ]b4_integral_parser_table_define([rline], [b4_rline],