branch: elpa/flycheck
commit 2236df19974a923713cea7ab1de451c8aa6a0c56
Author: Bozhidar Batsov <[email protected]>
Commit: Bozhidar Batsov <[email protected]>
Simplify flycheck-parse-statix nested let-alist
Use let-alist on the outer error first, then nest let-alist on
the diagnostic. Access the few outer fields (severity, note,
code) via alist-get inside the inner let-alist, eliminating the
intermediate let bindings that were needed to carry values across.
---
flycheck.el | 45 ++++++++++++++++++++-------------------------
1 file changed, 20 insertions(+), 25 deletions(-)
diff --git a/flycheck.el b/flycheck.el
index a758c57a58..5601c20fd9 100644
--- a/flycheck.el
+++ b/flycheck.el
@@ -11337,31 +11337,26 @@ the BUFFER that was checked respectively.
See URL `https://github.com/nerdypepper/statix' for more
information about statix."
(mapcar (lambda (err)
- ;; Diagnostic information is a (seemingly always) 1 element array.
- (let-alist (car (alist-get 'diagnostics err))
- (let ((message .message)
- (start-line .at.from.line)
- (start-column .at.from.column)
- (end-line .at.to.line)
- (end-column .at.to.column))
-
- (let-alist err
- (flycheck-error-new-at
- start-line
- start-column
- (pcase .severity ("Error" 'error)
- ("Warn" 'warning)
- (_ 'warning))
- (format "%s: %s" .note message)
- :id (format "%s%02d" (pcase .severity
- ("Error" "E")
- ("Warn" "W")
- (_ "")) .code)
- :checker checker
- :buffer buffer
- :filename (buffer-file-name buffer)
- :end-line end-line
- :end-column end-column)))))
+ (let-alist err
+ ;; Diagnostic information is a (seemingly always) 1 element
array.
+ (let-alist (car .diagnostics)
+ (flycheck-error-new-at
+ .at.from.line
+ .at.from.column
+ (pcase (alist-get 'severity err)
+ ("Error" 'error)
+ (_ 'warning))
+ (format "%s: %s" (alist-get 'note err) .message)
+ :id (format "%s%02d" (pcase (alist-get 'severity err)
+ ("Error" "E")
+ ("Warn" "W")
+ (_ ""))
+ (alist-get 'code err))
+ :checker checker
+ :buffer buffer
+ :filename (buffer-file-name buffer)
+ :end-line .at.to.line
+ :end-column .at.to.column))))
(alist-get 'report (car (flycheck-parse-json output)))))
(flycheck-define-checker statix