branch: externals/phps-mode
commit ec18c1ec226117be2611e1bd70a402552d1a843d
Author: Christian Johansson <[email protected]>
Commit: Christian Johansson <[email protected]>
Using parser to be able to implement incremental parser
---
phps-mode-lex-analyzer.el | 15 ++++++++-------
test/phps-mode-test-lex-analyzer.el | 10 +++++-----
2 files changed, 13 insertions(+), 12 deletions(-)
diff --git a/phps-mode-lex-analyzer.el b/phps-mode-lex-analyzer.el
index 918c147..e83cadd 100644
--- a/phps-mode-lex-analyzer.el
+++ b/phps-mode-lex-analyzer.el
@@ -410,7 +410,7 @@
(progn
(setq
after-parser-parse
- (phps-mode-parser-parse))
+ (phps-mode-parser--parse))
(setq got-error nil))
(when got-error
(kill-buffer)))
@@ -424,12 +424,13 @@
(after-lexer-heredoc-label-stack
phps-mode-lexer--heredoc-label-stack))
(kill-buffer)
(list
- after-lexer-tokens
- after-lexer-states
- after-lexer-state
- after-lexer-state-stack
- after-lexer-heredoc-label
- after-lexer-heredoc-label-stack
+ (list
+ after-lexer-tokens
+ after-lexer-states
+ after-lexer-state
+ after-lexer-state-stack
+ after-lexer-heredoc-label
+ after-lexer-heredoc-label-stack)
after-parser-parse)))))))
(defun phps-mode-lex-analyzer--re2c-run (&optional force-synchronous)
diff --git a/test/phps-mode-test-lex-analyzer.el
b/test/phps-mode-test-lex-analyzer.el
index a1c9c5b..e673430 100644
--- a/test/phps-mode-test-lex-analyzer.el
+++ b/test/phps-mode-test-lex-analyzer.el
@@ -1611,14 +1611,14 @@
)
-(defun phps-mode-test-lex-analyzer--parse ()
+(defun phps-mode-test-lex-analyzer--parse-string ()
"Test the parser."
(should
(equal
- '(((T_OPEN_TAG 1 . 7) (T_ECHO 7 . 11) (T_CONSTANT_ENCAPSED_STRING 12 . 17)
(";" 17 . 18)) ((17 18 ST_IN_SCRIPTING nil nil nil nil) (12 17 ST_IN_SCRIPTING
nil nil nil nil) (7 11 ST_IN_SCRIPTING nil nil nil nil) (1 7 ST_IN_SCRIPTING
nil nil nil nil)) ST_IN_SCRIPTING nil nil nil (80 459 466 411 333 332 154 102
79))
- (phps-mode-lex-analyzer--parse-string
- "<?php echo 'abc';")))
+ '(80 459 466 411 333 332 154 102 79)
+ (car (car (cdr (phps-mode-lex-analyzer--parse-string
+ "<?php echo 'abc';"))))))
(message "Passed valid parse test")
(should-error
@@ -1648,7 +1648,7 @@
(phps-mode-test-lex-analyzer--get-moved-imenu)
(phps-mode-test-lex-analyzer--comment-uncomment-region)
(phps-mode-test-lex-analyzer--move-lines-indent)
- (phps-mode-test-lex-analyzer--parse))
+ (phps-mode-test-lex-analyzer--parse-string))
(phps-mode-test-lex-analyzer)