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

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

[elpa] externals/parser-generator dced2e199f 22/29: Sorting LR-action ta


From: Christian Johansson
Subject: [elpa] externals/parser-generator dced2e199f 22/29: Sorting LR-action tables before outputting them in messages
Date: Sat, 12 Feb 2022 02:24:45 -0500 (EST)

branch: externals/parser-generator
commit dced2e199ff1da3724538d1385b32b3d0c7e006e
Author: Christian Johansson <christian@cvj.se>
Commit: Christian Johansson <christian@cvj.se>

    Sorting LR-action tables before outputting them in messages
---
 parser-generator-lr.el           | 11 +++++++++--
 test/parser-generator-lr-test.el |  5 +++--
 2 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/parser-generator-lr.el b/parser-generator-lr.el
index 3718857c28..1f72ae7dd9 100644
--- a/parser-generator-lr.el
+++ b/parser-generator-lr.el
@@ -682,6 +682,11 @@
         (parser-generator--debug
          (message "%s actions %s" goto-index action-table))
         (when action-table
+          (setq
+           action-table
+           (sort
+            action-table
+            'parser-generator--sort-list))
           (message
            "ACTION-TABLE (%d): %S\n"
            goto-index
@@ -689,11 +694,13 @@
           (push
            (list
             goto-index
-            (sort action-table 'parser-generator--sort-list))
+            action-table)
            action-tables))))
     (unless found-accept
       (error "Failed to find an accept action in the generated 
action-tables!"))
-    (setq action-tables (nreverse action-tables))
+    (setq
+     action-tables
+     (nreverse action-tables))
     (setq
      parser-generator-lr--action-tables
      (make-hash-table :test 'equal))
diff --git a/test/parser-generator-lr-test.el b/test/parser-generator-lr-test.el
index 3ec3b50fa2..f8bc3d8f30 100644
--- a/test/parser-generator-lr-test.el
+++ b/test/parser-generator-lr-test.el
@@ -1165,7 +1165,7 @@
       (message "Passed test PHP 8.0 match grammar 2")
       ))
 
-  ;; TODO Test another left-recursive grammar from PHP 8.0 here
+  ;; Test another left-recursive grammar from PHP 8.0 here
   (parser-generator-set-look-ahead-number 1)
   (parser-generator-set-e-identifier '%empty)
   (parser-generator-set-grammar
@@ -1735,7 +1735,7 @@
         (7 nil)
         (8 nil))
       (parser-generator-lr--get-expanded-goto-tables)))
-    (message "Passed GOTO-tables k = 2")
+    (message "Passed GOTO-tables k = 0")
 
     ;;         *       +       0       1       $
     ;; 0                       s1      s2      
@@ -1755,6 +1755,7 @@
       "Action-tables k = 0: %s"
       (parser-generator-lr--get-expanded-action-tables)))
 
+    ;; TODO Make this work
     (should
      (equal
       '(



reply via email to

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