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

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

[elpa] externals/phps-mode 244a62b 39/96: Parser generator now can parse


From: Christian Johansson
Subject: [elpa] externals/phps-mode 244a62b 39/96: Parser generator now can parse PHP YACC productions
Date: Fri, 29 Oct 2021 11:14:42 -0400 (EDT)

branch: externals/phps-mode
commit 244a62bf3bb08b8e386ad99f3d15ecc85519c988
Author: Christian Johansson <christian@cvj.se>
Commit: Christian Johansson <christian@cvj.se>

    Parser generator now can parse PHP YACC productions
---
 admin/phps-mode-grammar-parser-generator.el | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/admin/phps-mode-grammar-parser-generator.el 
b/admin/phps-mode-grammar-parser-generator.el
index cdc6f8e..967098a 100644
--- a/admin/phps-mode-grammar-parser-generator.el
+++ b/admin/phps-mode-grammar-parser-generator.el
@@ -84,7 +84,6 @@
              (when
                  (search-forward-regexp "[^\t\n ]" nil t)
                (forward-char -1)
-               (message "moved to %S" (point))
                (setq-local
                 parser-generator-lex-analyzer--move-to-index-flag
                 (point))))
@@ -133,9 +132,11 @@
                       (1- nesting-stack))
                      (when
                          (= nesting-stack 0)
+                       (when (looking-at ";")
+                         (forward-char 1))
                        (setq
                         logic-end
-                        (match-end 0))))
+                        (point))))
 
                     ((string= match "/*")
                      (let (
@@ -172,7 +173,7 @@
               token
               `(productions-delimiter ,(match-beginning 0) . ,(match-end 0))))
 
-            ((looking-at "\\([%a-zA-Z_]+\\|'.{1}'\\)")
+            ((looking-at "\\([%a-zA-Z_]+\\|'.'\\)")
              (setq
               token
               `(symbol ,(match-beginning 0) . ,(match-end 0))))))
@@ -181,8 +182,7 @@
            (let ((token-data
                   (buffer-substring-no-properties
                    (car (cdr token))
-                   (cdr (cdr token)))))
-             (message "Token: %S = %S" token token-data)))
+                   (cdr (cdr token)))))))
          token))))
 
   (setq
@@ -216,8 +216,8 @@
     (let ((delimiter-start (search-forward "%%")))
       (kill-region delimiter-start (point-max)))
     (goto-char (point-min))
-    (message "Buffer contents:\n\n%S" (buffer-substring-no-properties 
(point-min) (point-max)))
-    (parser-generator-lr-parse)))
+    (let ((parse (parser-generator-lr-parse)))
+      (message "parse: %S" parse))))
 
 (provide 'phps-mode-grammar-parser-generator)
 ;;; phps-mode-grammar-parser-generator.el ends here



reply via email to

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