emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/wisitoken-grammar-mode 66e5952: In wisitoken-grammar-mo


From: Stephen Leake
Subject: [elpa] externals/wisitoken-grammar-mode 66e5952: In wisitoken-grammar-mode, release version 1.2.0
Date: Sun, 7 Jun 2020 13:13:36 -0400 (EDT)

branch: externals/wisitoken-grammar-mode
commit 66e5952d38d404cd0c37787f5e01a4cc0f2ccea4
Author: Stephen Leake <stephen_leake@stephe-leake.org>
Commit: Stephen Leake <stephen_leake@stephe-leake.org>

    In wisitoken-grammar-mode, release version 1.2.0
---
 wisitoken-grammar-mode.el               | 36 +++++++------
 wisitoken_grammar_1.wy                  |  4 ++
 wisitoken_grammar_1_process_actions.adb | 72 ++++++++++++++++++++++++++
 wisitoken_grammar_1_process_actions.ads | 20 ++++++++
 wisitoken_grammar_1_process_main.adb    | 90 +++++++++++++++++----------------
 5 files changed, 163 insertions(+), 59 deletions(-)

diff --git a/wisitoken-grammar-mode.el b/wisitoken-grammar-mode.el
index 96e1541..704638b 100644
--- a/wisitoken-grammar-mode.el
+++ b/wisitoken-grammar-mode.el
@@ -5,7 +5,7 @@
 ;; Author: Stephen Leake <stephen_leake@stephe-leake.org>
 ;; Maintainer: Stephen Leake <stephen_leake@stephe-leake.org>
 ;; Keywords: languages
-;; Version: 1.1.0
+;; Version: 1.2.0
 ;; package-requires: ((wisi "3.1.1") (emacs "25.0") (mmm-mode "0.5.7"))
 ;; url: http://www.nongnu.org/ada-mode/
 
@@ -40,16 +40,24 @@
   :group 'languages)
 
 (defcustom wisitoken-grammar-process-parse-exec 
"wisitoken_grammar_mode_parse.exe"
+  ;; wisitoken_grammar.gpr uses .exe even on non-windows.
   "Name of executable to use for external process wisitoken-grammar parser,"
   :type 'string
   :group 'wisitoken-grammar)
 
 (defvar wisitoken-grammar-mode-syntax-table
   (let ((table (make-syntax-table)))
-    ;; see wisitoken-grammar-syntax-propertize for comment start
-    (modify-syntax-entry ?\n ">   " table)
-    (modify-syntax-entry ?= ".   " table) ;; default symbol
-    (modify-syntax-entry ?* ".   " table) ;; default symbol
+    (modify-syntax-entry ?\; ". 12" table) ;; ";;" comment start; default 
punctuation
+    (modify-syntax-entry ?\n ">   " table) ;; comment end
+    (modify-syntax-entry ?=  ".   " table) ;; default symbol
+    (modify-syntax-entry ?*  ".   " table) ;; default symbol
+
+    ;; WORKAROUND (see mmm github issue 130) Because mmm does not
+    ;; limit syntax-ppss, we can't set ?\' to string here; that sees
+    ;; ?\' in 'code' and 'action' blocks. In addition, we prefer
+    ;; font-lock-constant-face for tokens. So we handle ?\' in the
+    ;; parser.
+
     table))
 
 (defvar wisitoken-grammar-mode-map
@@ -60,6 +68,7 @@
     (define-key map "\C-c\C-f" 'wisi-show-parse-error)
     (define-key map "\C-c\C-m" 'wisitoken-grammar-mmm-parse)
     (define-key map [S-return] 'wisitoken-grammar-new-line)
+    (define-key map "\C-c`"    'ada-show-secondary-error)
     map
   )  "Local keymap used for wisitoken-grammar mode.")
 
@@ -175,7 +184,7 @@
   "If in action, call `mmm-parse-region' on it."
   (interactive)
   (save-excursion
-    (let* ((begin (search-backward-regexp "%[(}]" nil t))
+    (let* ((begin (search-backward-regexp "%[({]" nil t))
           (end   (when begin (search-forward-regexp "[)}]%" nil t))))
       (when (and begin end)
        (mmm-parse-region begin end)))
@@ -236,19 +245,14 @@ Otherwise insert a plain new line."
     (goto-char start)
     (save-match-data
       (while (re-search-forward
-             (concat
-              "\\(;;\\)"     ;; comment start
-              "\\|\\(%\\[\\)" ;; regexp begin
-              )
+              "\\(%\\[\\)" ;; regexp begin
              end t)
        (cond
         ((match-beginning 1)
-         (put-text-property (match-beginning 1) (match-end 1) 'syntax-table 
'(11 . nil)))
-
-        ((match-beginning 2)
-         (let ((begin (match-beginning 2))
+         (let ((begin (match-beginning 1))
                (end (search-forward "]%")))
-           ;; allow single quotes in regexp to not mess up the rest of the 
buffer
+           ;; allow single quotes in regexp to not mess up the rest
+           ;; of the buffer
            (put-text-property begin end 'syntax-table '(11 . nil))
            ))
         ))
@@ -358,7 +362,7 @@ Otherwise insert a plain new line."
 (define-derived-mode wisitoken-grammar-mode prog-mode "Wisi"
   "A major mode for Wisi grammar files."
   (set (make-local-variable 'syntax-propertize-function) 
'wisitoken-grammar-syntax-propertize)
-  (syntax-ppss-flush-cache (point-min));; reparse with new function
+
   (set (make-local-variable 'parse-sexp-ignore-comments) t)
   (set (make-local-variable 'parse-sexp-lookup-properties) t)
 
diff --git a/wisitoken_grammar_1.wy b/wisitoken_grammar_1.wy
index 3950b86..69bb3cd 100644
--- a/wisitoken_grammar_1.wy
+++ b/wisitoken_grammar_1.wy
@@ -181,7 +181,9 @@ declaration_item
   | RIGHT_PAREN
   | SLASH
   | STRING_LITERAL_1
+    %((wisi-face-apply-action [1 nil font-lock-string-face]))%
   | STRING_LITERAL_2
+    %((wisi-face-apply-action [1 nil font-lock-string-face]))%
   | TOKEN
   ;; ",", "token", "/", "(", ")" appear in %conflict declarations
   ;
@@ -235,6 +237,7 @@ rhs_item_list
 rhs_item
   : IDENTIFIER
   | STRING_LITERAL_2   ;; value of token
+    %((wisi-face-apply-action [1 nil font-lock-constant-face]))%
   | rhs_attribute ;; ANTLR attribute
   | rhs_optional_item
   | rhs_multiple_item
@@ -250,6 +253,7 @@ rhs_optional_item
   | LEFT_PAREN rhs_alternative_list RIGHT_PAREN QUESTION
   | IDENTIFIER QUESTION
   | STRING_LITERAL_2 QUESTION
+    %((wisi-face-apply-action [1 nil font-lock-constant-face]))%
   ;
 
 rhs_multiple_item
diff --git a/wisitoken_grammar_1_process_actions.adb 
b/wisitoken_grammar_1_process_actions.adb
index 14a4920..bcbc566 100644
--- a/wisitoken_grammar_1_process_actions.adb
+++ b/wisitoken_grammar_1_process_actions.adb
@@ -191,6 +191,42 @@ package body Wisitoken_Grammar_1_Process_Actions is
       end case;
    end declaration_item_5;
 
+   procedure declaration_item_8
+    (User_Data : in out WisiToken.Syntax_Trees.User_Data_Type'Class;
+     Tree      : in out WisiToken.Syntax_Trees.Tree;
+     Nonterm   : in     WisiToken.Valid_Node_Index;
+     Tokens    : in     WisiToken.Valid_Node_Index_Array)
+   is
+      Parse_Data : Wisi.Parse_Data_Type renames Wisi.Parse_Data_Type 
(User_Data);
+   begin
+      case Parse_Data.Post_Parse_Action is
+      when Navigate =>
+         null;
+      when Face =>
+         Face_Apply_Action (Parse_Data, Tree, Nonterm, Tokens, (1 => (1, 5, 
3)));
+      when Indent =>
+         null;
+      end case;
+   end declaration_item_8;
+
+   procedure declaration_item_9
+    (User_Data : in out WisiToken.Syntax_Trees.User_Data_Type'Class;
+     Tree      : in out WisiToken.Syntax_Trees.Tree;
+     Nonterm   : in     WisiToken.Valid_Node_Index;
+     Tokens    : in     WisiToken.Valid_Node_Index_Array)
+   is
+      Parse_Data : Wisi.Parse_Data_Type renames Wisi.Parse_Data_Type 
(User_Data);
+   begin
+      case Parse_Data.Post_Parse_Action is
+      when Navigate =>
+         null;
+      when Face =>
+         Face_Apply_Action (Parse_Data, Tree, Nonterm, Tokens, (1 => (1, 5, 
3)));
+      when Indent =>
+         null;
+      end case;
+   end declaration_item_9;
+
    procedure nonterminal_0
     (User_Data : in out WisiToken.Syntax_Trees.User_Data_Type'Class;
      Tree      : in out WisiToken.Syntax_Trees.Tree;
@@ -306,6 +342,42 @@ package body Wisitoken_Grammar_1_Process_Actions is
       end case;
    end rhs_3;
 
+   procedure rhs_item_1
+    (User_Data : in out WisiToken.Syntax_Trees.User_Data_Type'Class;
+     Tree      : in out WisiToken.Syntax_Trees.Tree;
+     Nonterm   : in     WisiToken.Valid_Node_Index;
+     Tokens    : in     WisiToken.Valid_Node_Index_Array)
+   is
+      Parse_Data : Wisi.Parse_Data_Type renames Wisi.Parse_Data_Type 
(User_Data);
+   begin
+      case Parse_Data.Post_Parse_Action is
+      when Navigate =>
+         null;
+      when Face =>
+         Face_Apply_Action (Parse_Data, Tree, Nonterm, Tokens, (1 => (1, 5, 
0)));
+      when Indent =>
+         null;
+      end case;
+   end rhs_item_1;
+
+   procedure rhs_optional_item_3
+    (User_Data : in out WisiToken.Syntax_Trees.User_Data_Type'Class;
+     Tree      : in out WisiToken.Syntax_Trees.Tree;
+     Nonterm   : in     WisiToken.Valid_Node_Index;
+     Tokens    : in     WisiToken.Valid_Node_Index_Array)
+   is
+      Parse_Data : Wisi.Parse_Data_Type renames Wisi.Parse_Data_Type 
(User_Data);
+   begin
+      case Parse_Data.Post_Parse_Action is
+      when Navigate =>
+         null;
+      when Face =>
+         Face_Apply_Action (Parse_Data, Tree, Nonterm, Tokens, (1 => (1, 5, 
0)));
+      when Indent =>
+         null;
+      end case;
+   end rhs_optional_item_3;
+
    procedure compilation_unit_list_0
     (User_Data : in out WisiToken.Syntax_Trees.User_Data_Type'Class;
      Tree      : in out WisiToken.Syntax_Trees.Tree;
diff --git a/wisitoken_grammar_1_process_actions.ads 
b/wisitoken_grammar_1_process_actions.ads
index 2574c95..b53261e 100644
--- a/wisitoken_grammar_1_process_actions.ads
+++ b/wisitoken_grammar_1_process_actions.ads
@@ -211,6 +211,16 @@ package Wisitoken_Grammar_1_Process_Actions is
      Tree      : in out WisiToken.Syntax_Trees.Tree;
      Nonterm   : in     WisiToken.Valid_Node_Index;
      Tokens    : in     WisiToken.Valid_Node_Index_Array);
+   procedure declaration_item_8
+    (User_Data : in out WisiToken.Syntax_Trees.User_Data_Type'Class;
+     Tree      : in out WisiToken.Syntax_Trees.Tree;
+     Nonterm   : in     WisiToken.Valid_Node_Index;
+     Tokens    : in     WisiToken.Valid_Node_Index_Array);
+   procedure declaration_item_9
+    (User_Data : in out WisiToken.Syntax_Trees.User_Data_Type'Class;
+     Tree      : in out WisiToken.Syntax_Trees.Tree;
+     Nonterm   : in     WisiToken.Valid_Node_Index;
+     Tokens    : in     WisiToken.Valid_Node_Index_Array);
    procedure nonterminal_0
     (User_Data : in out WisiToken.Syntax_Trees.User_Data_Type'Class;
      Tree      : in out WisiToken.Syntax_Trees.Tree;
@@ -241,6 +251,16 @@ package Wisitoken_Grammar_1_Process_Actions is
      Tree      : in out WisiToken.Syntax_Trees.Tree;
      Nonterm   : in     WisiToken.Valid_Node_Index;
      Tokens    : in     WisiToken.Valid_Node_Index_Array);
+   procedure rhs_item_1
+    (User_Data : in out WisiToken.Syntax_Trees.User_Data_Type'Class;
+     Tree      : in out WisiToken.Syntax_Trees.Tree;
+     Nonterm   : in     WisiToken.Valid_Node_Index;
+     Tokens    : in     WisiToken.Valid_Node_Index_Array);
+   procedure rhs_optional_item_3
+    (User_Data : in out WisiToken.Syntax_Trees.User_Data_Type'Class;
+     Tree      : in out WisiToken.Syntax_Trees.Tree;
+     Nonterm   : in     WisiToken.Valid_Node_Index;
+     Tokens    : in     WisiToken.Valid_Node_Index_Array);
    procedure compilation_unit_list_0
     (User_Data : in out WisiToken.Syntax_Trees.User_Data_Type'Class;
      Tree      : in out WisiToken.Syntax_Trees.Tree;
diff --git a/wisitoken_grammar_1_process_main.adb 
b/wisitoken_grammar_1_process_main.adb
index f408395..61ac8dc 100644
--- a/wisitoken_grammar_1_process_main.adb
+++ b/wisitoken_grammar_1_process_main.adb
@@ -285,13 +285,13 @@ package body Wisitoken_Grammar_1_Process_Main is
             Table.States (33).Kernel := To_Vector ((0 => ((42, 1),  33,  0, 
(42, 1),  1)));
             Table.States (33).Minimal_Complete_Actions := To_Vector ((0 => 
(Reduce, (42, 1),  1)));
             Table.States (34).Action_List.Set_Capacity (13);
-            Add_Action (Table.States (34), (8, 10, 15, 16, 20, 23, 28, 30, 32, 
33, 34, 35, 36), (42, 8),  1, null,
-            null);
+            Add_Action (Table.States (34), (8, 10, 15, 16, 20, 23, 28, 30, 32, 
33, 34, 35, 36), (42, 8),  1,
+            declaration_item_8'Access, null);
             Table.States (34).Kernel := To_Vector ((0 => ((42, 8),  34,  0, 
(42, 8),  1)));
             Table.States (34).Minimal_Complete_Actions := To_Vector ((0 => 
(Reduce, (42, 8),  1)));
             Table.States (35).Action_List.Set_Capacity (13);
-            Add_Action (Table.States (35), (8, 10, 15, 16, 20, 23, 28, 30, 32, 
33, 34, 35, 36), (42, 9),  1, null,
-            null);
+            Add_Action (Table.States (35), (8, 10, 15, 16, 20, 23, 28, 30, 32, 
33, 34, 35, 36), (42, 9),  1,
+            declaration_item_9'Access, null);
             Table.States (35).Kernel := To_Vector ((0 => ((42, 9),  35,  0, 
(42, 9),  1)));
             Table.States (35).Minimal_Complete_Actions := To_Vector ((0 => 
(Reduce, (42, 9),  1)));
             Table.States (36).Action_List.Set_Capacity (13);
@@ -418,18 +418,18 @@ package body Wisitoken_Grammar_1_Process_Main is
             Table.States (43).Minimal_Complete_Actions := To_Vector (((Reduce, 
(50, 0),  1), (Shift, (52, 2),  25,
             106), (Shift, (53, 4),  24, 105), (Shift, (53, 5),  31, 107)));
             Table.States (44).Action_List.Set_Capacity (12);
-            Add_Action (Table.States (44), 11, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (44), 12, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (44), 18, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (44), 19, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (44), 20, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (44), 21, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (44), 23, Reduce, (50, 1),  1, null, 
null);
+            Add_Action (Table.States (44), 11, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (44), 12, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (44), 18, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (44), 19, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (44), 20, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (44), 21, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (44), 23, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
             Add_Action (Table.States (44), 25, (52, 3), 108);
-            Add_Action (Table.States (44), 29, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (44), 33, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (44), 35, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (44), 36, Reduce, (50, 1),  1, null, 
null);
+            Add_Action (Table.States (44), 29, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (44), 33, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (44), 35, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (44), 36, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
             Table.States (44).Kernel := To_Vector ((((50, 1),  35,  0, (50, 
1),  1), ((52, 3),  35,  1, (2147483647,
             0),  0)));
             Table.States (44).Minimal_Complete_Actions := To_Vector (((Reduce, 
(50, 1),  1), (Shift, (52, 3),  25,
@@ -622,15 +622,15 @@ package body Wisitoken_Grammar_1_Process_Main is
             Table.States (65).Minimal_Complete_Actions := To_Vector (((Reduce, 
(50, 0),  1), (Shift, (52, 2),  25,
             124), (Shift, (53, 4),  24, 123), (Shift, (53, 5),  31, 125)));
             Table.States (66).Action_List.Set_Capacity (9);
-            Add_Action (Table.States (66), 12, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (66), 18, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (66), 19, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (66), 20, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (66), 21, Reduce, (50, 1),  1, null, 
null);
+            Add_Action (Table.States (66), 12, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (66), 18, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (66), 19, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (66), 20, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (66), 21, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
             Add_Action (Table.States (66), 25, (52, 3), 126);
-            Add_Action (Table.States (66), 26, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (66), 33, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (66), 35, Reduce, (50, 1),  1, null, 
null);
+            Add_Action (Table.States (66), 26, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (66), 33, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (66), 35, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
             Table.States (66).Kernel := To_Vector ((((50, 1),  35,  0, (50, 
1),  1), ((52, 3),  35,  1, (2147483647,
             0),  0)));
             Table.States (66).Minimal_Complete_Actions := To_Vector (((Reduce, 
(50, 1),  1), (Shift, (52, 3),  25,
@@ -763,15 +763,15 @@ package body Wisitoken_Grammar_1_Process_Main is
             Table.States (79).Minimal_Complete_Actions := To_Vector (((Reduce, 
(50, 0),  1), (Shift, (52, 2),  25,
             136), (Shift, (53, 4),  24, 135), (Shift, (53, 5),  31, 137)));
             Table.States (80).Action_List.Set_Capacity (9);
-            Add_Action (Table.States (80), 12, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (80), 18, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (80), 19, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (80), 20, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (80), 21, Reduce, (50, 1),  1, null, 
null);
+            Add_Action (Table.States (80), 12, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (80), 18, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (80), 19, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (80), 20, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (80), 21, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
             Add_Action (Table.States (80), 25, (52, 3), 138);
-            Add_Action (Table.States (80), 27, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (80), 33, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (80), 35, Reduce, (50, 1),  1, null, 
null);
+            Add_Action (Table.States (80), 27, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (80), 33, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (80), 35, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
             Table.States (80).Kernel := To_Vector ((((50, 1),  35,  0, (50, 
1),  1), ((52, 3),  35,  1, (2147483647,
             0),  0)));
             Table.States (80).Minimal_Complete_Actions := To_Vector (((Reduce, 
(50, 1),  1), (Shift, (52, 3),  25,
@@ -907,15 +907,15 @@ package body Wisitoken_Grammar_1_Process_Main is
             Table.States (93).Minimal_Complete_Actions := To_Vector (((Reduce, 
(50, 0),  1), (Shift, (52, 2),  25,
             148), (Shift, (53, 4),  24, 147), (Shift, (53, 5),  31, 149)));
             Table.States (94).Action_List.Set_Capacity (9);
-            Add_Action (Table.States (94), 12, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (94), 18, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (94), 19, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (94), 20, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (94), 21, Reduce, (50, 1),  1, null, 
null);
+            Add_Action (Table.States (94), 12, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (94), 18, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (94), 19, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (94), 20, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (94), 21, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
             Add_Action (Table.States (94), 25, (52, 3), 150);
-            Add_Action (Table.States (94), 28, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (94), 33, Reduce, (50, 1),  1, null, 
null);
-            Add_Action (Table.States (94), 35, Reduce, (50, 1),  1, null, 
null);
+            Add_Action (Table.States (94), 28, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (94), 33, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
+            Add_Action (Table.States (94), 35, Reduce, (50, 1),  1, 
rhs_item_1'Access, null);
             Table.States (94).Kernel := To_Vector ((((50, 1),  35,  0, (50, 
1),  1), ((52, 3),  35,  1, (2147483647,
             0),  0)));
             Table.States (94).Minimal_Complete_Actions := To_Vector (((Reduce, 
(50, 1),  1), (Shift, (52, 3),  25,
@@ -1002,7 +1002,8 @@ package body Wisitoken_Grammar_1_Process_Main is
             Table.States (107).Kernel := To_Vector ((0 => ((53, 5),  31,  0, 
(53, 5),  2)));
             Table.States (107).Minimal_Complete_Actions := To_Vector ((0 => 
(Reduce, (53, 5),  2)));
             Table.States (108).Action_List.Set_Capacity (11);
-            Add_Action (Table.States (108), (11, 12, 18, 19, 20, 21, 23, 29, 
33, 35, 36), (52, 3),  2, null, null);
+            Add_Action (Table.States (108), (11, 12, 18, 19, 20, 21, 23, 29, 
33, 35, 36), (52, 3),  2,
+            rhs_optional_item_3'Access, null);
             Table.States (108).Kernel := To_Vector ((0 => ((52, 3),  25,  0, 
(52, 3),  2)));
             Table.States (108).Minimal_Complete_Actions := To_Vector ((0 => 
(Reduce, (52, 3),  2)));
             Table.States (109).Action_List.Set_Capacity (10);
@@ -1119,7 +1120,8 @@ package body Wisitoken_Grammar_1_Process_Main is
             Table.States (125).Kernel := To_Vector ((0 => ((53, 5),  31,  0, 
(53, 5),  2)));
             Table.States (125).Minimal_Complete_Actions := To_Vector ((0 => 
(Reduce, (53, 5),  2)));
             Table.States (126).Action_List.Set_Capacity (8);
-            Add_Action (Table.States (126), (12, 18, 19, 20, 21, 26, 33, 35), 
(52, 3),  2, null, null);
+            Add_Action (Table.States (126), (12, 18, 19, 20, 21, 26, 33, 35), 
(52, 3),  2, rhs_optional_item_3'Access,
+            null);
             Table.States (126).Kernel := To_Vector ((0 => ((52, 3),  25,  0, 
(52, 3),  2)));
             Table.States (126).Minimal_Complete_Actions := To_Vector ((0 => 
(Reduce, (52, 3),  2)));
             Table.States (127).Action_List.Set_Capacity (8);
@@ -1211,7 +1213,8 @@ package body Wisitoken_Grammar_1_Process_Main is
             Table.States (137).Kernel := To_Vector ((0 => ((53, 5),  31,  0, 
(53, 5),  2)));
             Table.States (137).Minimal_Complete_Actions := To_Vector ((0 => 
(Reduce, (53, 5),  2)));
             Table.States (138).Action_List.Set_Capacity (8);
-            Add_Action (Table.States (138), (12, 18, 19, 20, 21, 27, 33, 35), 
(52, 3),  2, null, null);
+            Add_Action (Table.States (138), (12, 18, 19, 20, 21, 27, 33, 35), 
(52, 3),  2, rhs_optional_item_3'Access,
+            null);
             Table.States (138).Kernel := To_Vector ((0 => ((52, 3),  25,  0, 
(52, 3),  2)));
             Table.States (138).Minimal_Complete_Actions := To_Vector ((0 => 
(Reduce, (52, 3),  2)));
             Table.States (139).Action_List.Set_Capacity (8);
@@ -1290,7 +1293,8 @@ package body Wisitoken_Grammar_1_Process_Main is
             Table.States (149).Kernel := To_Vector ((0 => ((53, 5),  31,  0, 
(53, 5),  2)));
             Table.States (149).Minimal_Complete_Actions := To_Vector ((0 => 
(Reduce, (53, 5),  2)));
             Table.States (150).Action_List.Set_Capacity (8);
-            Add_Action (Table.States (150), (12, 18, 19, 20, 21, 28, 33, 35), 
(52, 3),  2, null, null);
+            Add_Action (Table.States (150), (12, 18, 19, 20, 21, 28, 33, 35), 
(52, 3),  2, rhs_optional_item_3'Access,
+            null);
             Table.States (150).Kernel := To_Vector ((0 => ((52, 3),  25,  0, 
(52, 3),  2)));
             Table.States (150).Minimal_Complete_Actions := To_Vector ((0 => 
(Reduce, (52, 3),  2)));
             Table.States (151).Action_List.Set_Capacity (8);



reply via email to

[Prev in Thread] Current Thread [Next in Thread]