From dbd2e20de97cdef56da0de07adff4251de94ef43 Mon Sep 17 00:00:00 2001 From: Ryo Nihei Date: Tue, 29 Mar 2022 19:10:23 +0900 Subject: Change syntax of production directives The position of directives given to productions has moved from before a left-hand side value to after a left-hand side value. This change aims to simplify the syntax. However, there is no change in positions of directives given to alternatives. --- driver/parser_test.go | 28 ++++++++++++++++------------ 1 file changed, 16 insertions(+), 12 deletions(-) (limited to 'driver/parser_test.go') diff --git a/driver/parser_test.go b/driver/parser_test.go index 050e51a..9a3e040 100644 --- a/driver/parser_test.go +++ b/driver/parser_test.go @@ -264,15 +264,17 @@ mode_tran | pop_m1 | pop_m2 ; -push_m1: "->" #push m1; -#mode m1 -push_m2: "-->" #push m2; -#mode m1 -pop_m1 : "<-" #pop; -#mode m2 -pop_m2: "<--" #pop; -#mode default m1 m2 -whitespace: "\u{0020}+" #skip; + +push_m1 + : "->" #push m1; +push_m2 #mode m1 + : "-->" #push m2; +pop_m1 #mode m1 + : "<-" #pop; +pop_m2 #mode m2 + : "<--" #pop; +whitespace #mode default m1 m2 + : "\u{0020}+" #skip; `, src: ` -> --> <-- <- `, }, @@ -283,9 +285,11 @@ whitespace: "\u{0020}+" #skip; s : foo bar ; -foo: "foo"; -#mode default -bar: "bar"; + +foo + : "foo"; +bar #mode default + : "bar"; `, src: `foobar`, }, -- cgit v1.2.3