[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] master 91c745a 04/38: Merge pull request #440 from felipeochoa/is
From: |
Dmitry Gutov |
Subject: |
[elpa] master 91c745a 04/38: Merge pull request #440 from felipeochoa/issue439 |
Date: |
Wed, 28 Feb 2018 20:12:08 -0500 (EST) |
branch: master
commit 91c745ad062d454834f646dcd16be6856a1db8b3
Merge: 7e4293b 4daab44
Author: Dmitry Gutov <address@hidden>
Commit: GitHub <address@hidden>
Merge pull request #440 from felipeochoa/issue439
make sure to visit import clause children in order
---
js2-mode.el | 6 +++---
tests/consume.el | 16 ++++++++++++++++
2 files changed, 19 insertions(+), 3 deletions(-)
diff --git a/js2-mode.el b/js2-mode.el
index 2f2df7b..4a9a068 100644
--- a/js2-mode.el
+++ b/js2-mode.el
@@ -2843,13 +2843,13 @@ local context."
(let ((ns-import (js2-import-clause-node-namespace-import n))
(named-imports (js2-import-clause-node-named-imports n))
(default (js2-import-clause-node-default-binding n)))
+ (when default
+ (js2-visit-ast default v))
(when ns-import
(js2-visit-ast ns-import v))
(when named-imports
(dolist (import named-imports)
- (js2-visit-ast import v)))
- (when default
- (js2-visit-ast default v))))
+ (js2-visit-ast import v)))))
(defun js2-print-import-clause (n)
(let ((ns-import (js2-import-clause-node-namespace-import n))
diff --git a/tests/consume.el b/tests/consume.el
index 935cdeb..c48f6a0 100644
--- a/tests/consume.el
+++ b/tests/consume.el
@@ -57,3 +57,19 @@
(setq comments (js2-comments-between 8 9 comments))
(should (= (length comments) 1))
)))
+
+;;; Visitors
+
+(ert-deftest js2-visit-import-clause-in-order ()
+ (with-temp-buffer
+ (insert "import defaultImport, { a, b, c} from 'xyz';")
+ (js2-mode--and-parse)
+ (let (visit-log)
+ (js2-visit-ast js2-mode-ast (lambda (node end-p)
+ (when (and (not end-p) (js2-name-node-p
node))
+ (let* ((start (js2-node-abs-pos node))
+ (end (+ start (js2-node-len
node))))
+ (push (buffer-substring-no-properties
start end) visit-log)))
+ t))
+ (setq visit-log (nreverse visit-log))
+ (should (equal visit-log (list "defaultImport" "a" "b" "c"))))))
- [elpa] master updated (94c7628 -> a6c39c2), Dmitry Gutov, 2018/02/28
- [elpa] master 4daab44 03/38: remove stray message call, Dmitry Gutov, 2018/02/28
- [elpa] master b0f8f03 02/38: make sure to visit import clause children in order, Dmitry Gutov, 2018/02/28
- [elpa] master 3207e5c 05/38: correctly handle arrow functions in js2-node-parent-stmt, Dmitry Gutov, 2018/02/28
- [elpa] master 91c745a 04/38: Merge pull request #440 from felipeochoa/issue439,
Dmitry Gutov <=
- [elpa] master daed014 10/38: add support for trailing comma in function arguments, Dmitry Gutov, 2018/02/28
- [elpa] master 048da26 06/38: Merge pull request #442 from felipeochoa/arrowStatements, Dmitry Gutov, 2018/02/28
- [elpa] master 6cf9ea4 07/38: Add jsdoc highlighting for yield and yields, Dmitry Gutov, 2018/02/28
- [elpa] master 43306d1 08/38: Merge pull request #444 from felipeochoa/jsdoc-yield, Dmitry Gutov, 2018/02/28
- [elpa] master dd295e8 13/38: Merge pull request #461 from Fuco1/feature/add-object-property-access-face, Dmitry Gutov, 2018/02/28
- [elpa] master ce540d2 19/38: Merge pull request #465 from felipeochoa/jsdoc-abstract, Dmitry Gutov, 2018/02/28
- [elpa] master ba14eb8 16/38: [feat] add jsdoc @abstract and @virtual empty tags, Dmitry Gutov, 2018/02/28
- [elpa] master 4062ae4 22/38: [bugfix] Mark @type jsdoc tag as a typed tag not an arg tag, Dmitry Gutov, 2018/02/28
- [elpa] master 47dc8f2 25/38: [feat] add @typedef jsdoc highlighting support, Dmitry Gutov, 2018/02/28
- [elpa] master eba9797 26/38: Merge pull request #469 from felipeochoa/jsdoc-typedef, Dmitry Gutov, 2018/02/28