Hi Akim,

nice to see that Java also gets LAC support :)




public 
]b4_parser_class[(]b4_parse_param_decl([b4_lex_param_decl])[)]b4_maybe_throws([b4_init_throws])[
{
-]b4_percent_code_get([[init]])[
- this.yylexer = new YYLexer (]b4_lex_param_call[);
+]b4_percent_code_get([[init]])[]b4_lac_if([[
+ this.yylacStack = new Vector<Integer>();
+ this.yylacEstablished = false;]])[
+ this.yylexer = new YYLexer(]b4_lex_param_call[);
]b4_parse_param_cons[



Why do we place the user-provided init-code first?
Does that mean, the user must not call any methoes which might depend on 
`yylexer`?
Not sure if this actually matters, but I would put the user-provided init-code 
last, so that the rest of the class is already initialized…



+ /// Logically, the yylacStack's lifetime is confined to the function
+ /// yylacCheck. We just store it as a member of this class to hold
+ /// on to the memory and to avoid frequent reallocations.
+ /// Since yylacCheck is const, this member must be mutable.

The  parts about “const” and “mutable” don’t really apply to Java…



Cheers,
Adrian
  • [PATCH 0... Akim Demaille
    • [PA... Akim Demaille
    • [PA... Akim Demaille
    • [PA... Akim Demaille
    • [PA... Akim Demaille
      • ... Adrian Vogelsgesang via Bug fixes and other improvements to Bison
        • ... Akim Demaille
          • ... Akim Demaille
            • ... Adrian Vogelsgesang via Bug fixes and other improvements to Bison
      • ... Akim Demaille

Reply via email to