[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
emacs-29 7f7def2ae6 1/5: ; Add treesit-no-parser error
From: |
Yuan Fu |
Subject: |
emacs-29 7f7def2ae6 1/5: ; Add treesit-no-parser error |
Date: |
Sat, 24 Dec 2022 21:43:13 -0500 (EST) |
branch: emacs-29
commit 7f7def2ae62c80fa2fd0c73087b59060b303c230
Author: Yuan Fu <casouri@gmail.com>
Commit: Yuan Fu <casouri@gmail.com>
; Add treesit-no-parser error
* lisp/treesit.el (treesit-no-parser): New error.
(treesit-buffer-root-node): Use the new error.
---
lisp/treesit.el | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/lisp/treesit.el b/lisp/treesit.el
index 845e6ab388..3d9c61b9dc 100644
--- a/lisp/treesit.el
+++ b/lisp/treesit.el
@@ -141,6 +141,9 @@ parser in `treesit-parser-list', or nil if there is no
parser."
;;; Node API supplement
+(define-error 'treesit-no-parser "No available parser for this buffer"
+ 'treesit-error)
+
(defun treesit-node-buffer (node)
"Return the buffer in which NODE belongs."
(treesit-parser-buffer
@@ -248,11 +251,10 @@ Use the first parser in `treesit-parser-list'.
If optional argument LANGUAGE is non-nil, use the first parser
for LANGUAGE."
(if-let ((parser
- (or (if language
- (treesit-parser-create language)
- (or (car (treesit-parser-list))
- (signal 'treesit-error
- '("Buffer has no parser")))))))
+ (if language
+ (treesit-parser-create language)
+ (or (car (treesit-parser-list))
+ (signal 'treesit-no-parser (list (current-buffer)))))))
(treesit-parser-root-node parser)))
(defun treesit-filter-child (node pred &optional named)