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

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

[elpa] externals/phps-mode 66edaca 286/405: Improved lexing of comment v


From: Stefan Monnier
Subject: [elpa] externals/phps-mode 66edaca 286/405: Improved lexing of comment version doc comment
Date: Sat, 13 Jul 2019 10:00:33 -0400 (EDT)

branch: externals/phps-mode
commit 66edaca1c581017c066500f3aa196ac140931fcb
Author: Christian Johansson <address@hidden>
Commit: Christian Johansson <address@hidden>

    Improved lexing of comment version doc comment
---
 phps-mode-lexer.el      | 14 ++++++++------
 phps-mode-test-lexer.el |  2 +-
 2 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/phps-mode-lexer.el b/phps-mode-lexer.el
index f2e887c..95ce874 100644
--- a/phps-mode-lexer.el
+++ b/phps-mode-lexer.el
@@ -1316,16 +1316,18 @@
      (lambda()
        (let* ((start (match-beginning 0))
               (end (match-end 0))
-              (_data (buffer-substring-no-properties start end)))
+              (_data (buffer-substring-no-properties start end))
+              (doc-com (looking-at-p (concat "/\\*\\*" 
phps-mode-lexer-WHITESPACE))))
          (let ((string-start (search-forward "*/" nil t))
                position)
            (if string-start
-               (setq position string-start)
+               (if doc-com
+                   (phps-mode-lexer-RETURN_TOKEN 'T_DOC_COMMENT start 
(match-end 0))
+                 (phps-mode-lexer-RETURN_TOKEN 'T_COMMENT start (match-end 0)))
              (progn
-               (setq position (point-max))
-               (phps-mode-lexer-MOVE_FORWARD (point-max))))
-           (phps-mode-lexer-RETURN_TOKEN 'T_DOC_COMMENT start position)
-           ))))
+               (display-warning "phps-mode" "PHPs Lexer Error - Unterminated 
comment starting at %s" start)
+               (phps-mode-lexer-RETURN_TOKEN 'T_ERROR start (point-max))
+               (phps-mode-lexer-MOVE_FORWARD (point-max))))))))
 
     (phps-mode-lexer-re2c-rule
      (and ST_IN_SCRIPTING (looking-at "\\?>\n?"))
diff --git a/phps-mode-test-lexer.el b/phps-mode-test-lexer.el
index d201484..364ab75 100644
--- a/phps-mode-test-lexer.el
+++ b/phps-mode-test-lexer.el
@@ -178,7 +178,7 @@
   (phps-mode-test-with-buffer
    "<?php\n/*my comment */\n/** my doc comment */"
    "Comment vs doc-comment"
-   (message "Tokens: %s" (phps-mode-lexer-get-tokens))
+   ;; (message "Tokens: %s" (phps-mode-lexer-get-tokens))
    (should (equal (phps-mode-lexer-get-tokens)
                   '((T_OPEN_TAG 1 . 7) (T_COMMENT 7 . 22) (T_DOC_COMMENT 23 . 
44)))))
 



reply via email to

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