From c2a2459fe591a07874468e3ec26e6eca743e1ad5 Mon Sep 17 00:00:00 2001
From: dgelessus <dgelessus@users.noreply.github.com>
Date: Thu, 20 Jul 2023 18:10:14 +0200
Subject: [PATCH] Convert Parser.action/.destination to local variables

---
 .../org/sablecc/sablecc/parser/Parser.java     | 18 ++++++++----------
 .../resources/org/sablecc/sablecc/parser.txt   | 18 ++++++++----------
 2 files changed, 16 insertions(+), 20 deletions(-)

diff --git a/src/main/java/org/sablecc/sablecc/parser/Parser.java b/src/main/java/org/sablecc/sablecc/parser/Parser.java
index 3e04de8..eb9f70d 100644
--- a/src/main/java/org/sablecc/sablecc/parser/Parser.java
+++ b/src/main/java/org/sablecc/sablecc/parser/Parser.java
@@ -30,8 +30,6 @@ public class Parser implements IParser
     private int last_line;
     private Token last_token;
     private final TokenIndex converter = new TokenIndex();
-    private int action;
-    private int destination;
 
     private final static int SHIFT = 0;
     private final static int REDUCE = 1;
@@ -189,8 +187,8 @@ public class Parser implements IParser
             this.last_token = this.lexer.peek();
 
             int index = index(this.lexer.peek());
-            this.action = Parser.actionTable[state()][0][1];
-            this.destination = Parser.actionTable[state()][0][2];
+            int action = Parser.actionTable[state()][0][1];
+            int destination = Parser.actionTable[state()][0][2];
 
             int low = 1;
             int high = Parser.actionTable[state()].length - 1;
@@ -209,23 +207,23 @@ public class Parser implements IParser
                 }
                 else
                 {
-                    this.action = Parser.actionTable[state()][middle][1];
-                    this.destination = Parser.actionTable[state()][middle][2];
+                    action = Parser.actionTable[state()][middle][1];
+                    destination = Parser.actionTable[state()][middle][2];
                     break;
                 }
             }
 
-            switch(this.action)
+            switch(action)
             {
                 case SHIFT:
                 {
                     List<Object> list = new ArrayList<Object>();
                     list.add(this.lexer.next());
-                    push(this.destination, list);
+                    push(destination, list);
                 }
                 break;
                 case REDUCE:
-                    switch(this.destination)
+                    switch(destination)
                     {
                         case 0: /* reduce AAgrammar1Grammar */
                         {
@@ -1853,7 +1851,7 @@ public class Parser implements IParser
                 case ERROR:
                     throw new ParserException(this.last_token,
                         "[" + this.last_line + "," + this.last_pos + "] " ,
-                        Parser.errorMessages[Parser.errors[this.destination]]);
+                        Parser.errorMessages[Parser.errors[destination]]);
             }
         }
     }
diff --git a/src/main/resources/org/sablecc/sablecc/parser.txt b/src/main/resources/org/sablecc/sablecc/parser.txt
index 7842214..013a568 100644
--- a/src/main/resources/org/sablecc/sablecc/parser.txt
+++ b/src/main/resources/org/sablecc/sablecc/parser.txt
@@ -38,8 +38,6 @@ public class Parser implements IParser
     private int last_line;
     private Token last_token;
     private final TokenIndex converter = new TokenIndex();
-    private int action;
-    private int destination;
 
     private final static int SHIFT = 0;
     private final static int REDUCE = 1;
@@ -223,8 +221,8 @@ Macro:ParserCommon
             this.last_token = this.lexer.peek();
 
             int index = index(this.lexer.peek());
-            this.action = Parser.actionTable[state()][0][1];
-            this.destination = Parser.actionTable[state()][0][2];
+            int action = Parser.actionTable[state()][0][1];
+            int destination = Parser.actionTable[state()][0][2];
 
             int low = 1;
             int high = Parser.actionTable[state()].length - 1;
@@ -243,23 +241,23 @@ Macro:ParserCommon
                 }
                 else
                 {
-                    this.action = Parser.actionTable[state()][middle][1];
-                    this.destination = Parser.actionTable[state()][middle][2];
+                    action = Parser.actionTable[state()][middle][1];
+                    destination = Parser.actionTable[state()][middle][2];
                     break;
                 }
             }
 
-            switch(this.action)
+            switch(action)
             {
                 case SHIFT:
                 {
                     List<Object> list = new ArrayList<Object>();
                     list.add(this.lexer.next());
-                    push(this.destination, list$1$);
+                    push(destination, list$1$);
                 }
                 break;
                 case REDUCE:
-                    switch(this.destination)
+                    switch(destination)
                     {
 
 $
@@ -297,7 +295,7 @@ Macro:ParserParseTail
                 case ERROR:
                     throw new ParserException(this.last_token,
                         "[" + this.last_line + "," + this.last_pos + "] " ,
-                        Parser.errorMessages[Parser.errors[this.destination]]);
+                        Parser.errorMessages[Parser.errors[destination]]);
             }
         }
     }
-- 
GitLab