rename parser_class_name as api.parser.class

The previous name was historical and inconsistent.

* src/muscle-tab.c (define_directive): Use the proper value passing
syntax, based on the muscle kind.
(muscle_percent_variable_update): Use the right value passing syntax.
Migrate from parser_class_name to api.parser.class.

* data/skeletons: Migrate from parser_class_name to api.parser.class.

* doc/bison.texi (%define Summary): Document both parser_class_name
and api.parser.class.
Promote the latter over the former.
This commit is contained in:
Akim Demaille
2019-01-01 16:55:52 +01:00
parent 092b787198
commit 890ee8a1fd
14 changed files with 112 additions and 60 deletions

View File

@@ -1834,7 +1834,7 @@ AT_SETUP([["%define" Boolean variables]])
AT_DATA([Input.y],
[[%language "Java"
%define public maybe
%define parser_class_name {Input}
%define api.parser.class {Input}
%%
start: %empty;
]])
@@ -1991,6 +1991,7 @@ AT_DATA([[input.y]],
%define namespace "foo"
%define api.namespace {foo}
%define variant
%define parser_class_name {parser}
%%
start: %empty;
]])
@@ -2001,7 +2002,7 @@ AT_BISON_CHECK([[-fcaret input.y]], [1], [],
input.y:2.9-34: warning: deprecated directive, use '%define lr.keep-unreachable-state maybe' [-Wdeprecated]
%define lr.keep_unreachable_states maybe
^^^^^^^^^^^^^^^^^^^^^^^^^^
input.y:3.9-17: warning: deprecated directive, use '%define api.namespace foo' [-Wdeprecated]
input.y:3.9-17: warning: deprecated directive, use '%define api.namespace {foo}' [-Wdeprecated]
%define namespace "foo"
^^^^^^^^^
input.y:4.9-21: error: %define variable 'api.namespace' redefined
@@ -2013,6 +2014,9 @@ input.y:3.9-17: previous definition
input.y:5.9-15: warning: deprecated directive, use '%define api.value.type variant' [-Wdeprecated]
%define variant
^^^^^^^
input.y:6.9-25: warning: deprecated directive, use '%define api.parser.class {parser}' [-Wdeprecated]
%define parser_class_name {parser}
^^^^^^^^^^^^^^^^^
]])
AT_CLEANUP

View File

@@ -37,7 +37,7 @@ AT_DATA([Calc.y],
[[/* Infix notation calculator--calc */
%language "Java"
%name-prefix "Calc"
%define parser_class_name {Calc}
%define api.parser.class {Calc}
%define public
]$4[
@@ -463,7 +463,7 @@ AT_CHECK_JAVA_GREP([[class PrefixParser]])
AT_CHECK_JAVA_MINIMAL([[%define api.token.prefix {TOK_}]])
AT_CHECK_JAVA_GREP([[.*TOK_END.*]])
AT_CHECK_JAVA_MINIMAL([[%define parser_class_name {ParserClassName}]])
AT_CHECK_JAVA_MINIMAL([[%define api.parser.class {ParserClassName}]])
AT_CHECK_JAVA_GREP([[class ParserClassName]])
AT_CHECK_JAVA_MINIMAL([[%define package {user_java_package}]])

View File

@@ -44,7 +44,7 @@ AT_BANNER([[Java Push Parsing Tests]])
# This is missing main(), so two versions
# are instantiated with different main() procedures.
m4_define([AT_TRIVIAL_GRAMMAR],[
%define parser_class_name {YYParser}
%define api.parser.class {YYParser}
%define parse.error verbose
%code imports {
@@ -346,7 +346,7 @@ AT_DATA([input],[[1 + 2 * 3 = 7
AT_DATA([Calc.y],[[/* Infix notation calculator--calc */
%language "Java"
%name-prefix "Calc"
%define parser_class_name {Calc}
%define api.parser.class {Calc}
%code {
static class UserLexer implements Calc.Lexer
@@ -620,7 +620,7 @@ AT_BISON_OPTION_PUSHDEFS
AT_DATA([Calc.y],[[/* Infix notation calculator--calc. */
%language "Java"
%name-prefix "Calc"
%define parser_class_name {Calc}
%define api.parser.class {Calc}
%lex-param { Reader rdr }
%locations