[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/org f895be1ad9 086/101: org-element--properties-mapc: S
From: |
ELPA Syncer |
Subject: |
[elpa] externals/org f895be1ad9 086/101: org-element--properties-mapc: Small refactoring |
Date: |
Sat, 1 Jul 2023 09:59:16 -0400 (EDT) |
branch: externals/org
commit f895be1ad900311585a591f81f02fbc6cb55dd36
Author: Ihor Radchenko <yantar92@posteo.net>
Commit: Ihor Radchenko <yantar92@posteo.net>
org-element--properties-mapc: Small refactoring
* lisp/org-element-ast.el (org-element--properties-mapc): Do not use
`pcase' - we are not testing for complex patterns here.
---
lisp/org-element-ast.el | 104 ++++++++++++++++++++++++------------------------
1 file changed, 52 insertions(+), 52 deletions(-)
diff --git a/lisp/org-element-ast.el b/lisp/org-element-ast.el
index e9fcba5130..e0e7d39b7a 100644
--- a/lisp/org-element-ast.el
+++ b/lisp/org-element-ast.el
@@ -570,58 +570,58 @@ values (except the values equal to
`org-element-ast--nil') and finally
return nil. When COLLECT is non-nil and not symbol `set', collect the
return values into a list and return it.
Otherwise, return nil."
- (let (acc rtn (fun-arity (cdr (func-arity fun))))
- (pcase (org-element-type node)
- (`nil nil)
- (type
- ;; Compute missing properties.
- (org-element-property :deferred node)
- ;; Map over parray.
- (unless no-standard
- (let ((standard-idxs
- org-element--standard-properties-idxs)
- (parray (org-element--parray node)))
- (when parray
- (while standard-idxs
- (setq
- rtn
- (pcase fun-arity
- (1 (funcall fun (aref parray (cadr standard-idxs))))
- (2 (funcall
- fun
- (car standard-idxs)
- (aref parray (cadr standard-idxs))))
- (_ (funcall
- fun
- (car standard-idxs)
- (aref parray (cadr standard-idxs))
- node))))
- (when collect
- (unless (eq rtn (aref parray (cadr standard-idxs)))
- (if (and (eq collect 'set) (not eq rtn
'org-element-ast--nil))
- (setf (aref parray (cadr standard-idxs)) rtn)
- (push rtn acc))))
- (setq standard-idxs (cddr standard-idxs))))))
- ;; Map over plist.
- (let ((props
- (if (eq type 'plain-text)
- (text-properties-at 0 node)
- (nth 1 node))))
- (while props
- (unless (eq :standard-properties (car props))
- (setq rtn
- (pcase fun-arity
- (1 (funcall fun (cadr props)))
- (2 (funcall fun (car props) (cadr props)))
- (_ (funcall fun (car props) (cadr props) node))))
- (when collect
- (if (and (eq collect 'set) (not (eq rtn 'org-element-ast--nil)))
- (unless (eq rtn (cadr props))
- (if (eq type 'plain-text)
- (org-add-props node nil (car props) rtn)
- (setf (cadr props) rtn)))
- (push rtn acc))))
- (setq props (cddr props))))))
+ (let ( acc rtn (fun-arity (cdr (func-arity fun)))
+ (type (org-element-type node)))
+ (when type
+ ;; Compute missing properties.
+ (org-element-property :deferred node)
+ ;; Map over parray.
+ (unless no-standard
+ (let ((standard-idxs
+ org-element--standard-properties-idxs)
+ (parray (org-element--parray node)))
+ (when parray
+ (while standard-idxs
+ (setq
+ rtn
+ (pcase fun-arity
+ (1 (funcall fun (aref parray (cadr standard-idxs))))
+ (2 (funcall
+ fun
+ (car standard-idxs)
+ (aref parray (cadr standard-idxs))))
+ (_ (funcall
+ fun
+ (car standard-idxs)
+ (aref parray (cadr standard-idxs))
+ node))))
+ (when collect
+ (unless (eq rtn (aref parray (cadr standard-idxs)))
+ (if (and (eq collect 'set) (not eq rtn
'org-element-ast--nil))
+ (setf (aref parray (cadr standard-idxs)) rtn)
+ (push rtn acc))))
+ (setq standard-idxs (cddr standard-idxs))))))
+ ;; Map over plist.
+ (let ((props
+ (if (eq type 'plain-text)
+ (text-properties-at 0 node)
+ (nth 1 node))))
+ (while props
+ (unless (eq :standard-properties (car props))
+ (setq rtn
+ (pcase fun-arity
+ (1 (funcall fun (cadr props)))
+ (2 (funcall fun (car props) (cadr props)))
+ (_ (funcall fun (car props) (cadr props) node))))
+ (when collect
+ (if (and (eq collect 'set)
+ (not (eq rtn 'org-element-ast--nil)))
+ (unless (eq rtn (cadr props))
+ (if (eq type 'plain-text)
+ (org-add-props node nil (car props) rtn)
+ (setf (cadr props) rtn)))
+ (push rtn acc))))
+ (setq props (cddr props)))))
;; Return.
(when collect (nreverse acc))))
- [elpa] externals/org f225e24869 040/101: org-element--current-element: Make defsubst, (continued)
- [elpa] externals/org f225e24869 040/101: org-element--current-element: Make defsubst, ELPA Syncer, 2023/07/01
- [elpa] externals/org dfd36d1969 049/101: org-up-heading-safe: Use element API, ELPA Syncer, 2023/07/01
- [elpa] externals/org fefaadc2d5 050/101: org-element: Optimize working with match data and Emacs regexps, ELPA Syncer, 2023/07/01
- [elpa] externals/org 6266197bbd 051/101: org-at-item-p: Use org-element API, ELPA Syncer, 2023/07/01
- [elpa] externals/org 6938857369 052/101: org-goto-first-child: Switch to org-element API, ELPA Syncer, 2023/07/01
- [elpa] externals/org 7c549f4841 060/101: org-babel-tangle-collect-blocks: Switch to org-element API, ELPA Syncer, 2023/07/01
- [elpa] externals/org b2482d9cc4 070/101: * testing/lisp/test-org-element.el: Add new tests, ELPA Syncer, 2023/07/01
- [elpa] externals/org b0a2deaec6 073/101: org-element--current-element: Faster property drawer check, ELPA Syncer, 2023/07/01
- [elpa] externals/org 110601ce74 074/101: org-element--current-element: Add FIXME, ELPA Syncer, 2023/07/01
- [elpa] externals/org 48e4a76b99 079/101: org-element: Avoid computing static regexps dynamically, ELPA Syncer, 2023/07/01
- [elpa] externals/org f895be1ad9 086/101: org-element--properties-mapc: Small refactoring,
ELPA Syncer <=
- [elpa] externals/org a04e16bd11 082/101: lisp/org-macs.el: Restructure file outline, fixing compiler warning, ELPA Syncer, 2023/07/01
- [elpa] externals/org 5a3224a325 085/101: etc/ORG-NEWS: Document Org API changes, ELPA Syncer, 2023/07/01
- [elpa] externals/org 9249275738 089/101: fixup! etc/ORG-NEWS: Document Org API changes, ELPA Syncer, 2023/07/01
- [elpa] externals/org f97aeaa243 099/101: org-fold-core--isearch-setup: Use `add-function', ELPA Syncer, 2023/07/01
- [elpa] externals/org 55ba9f05a7 018/101: org-element-map: Refactor using `org-element-ast-map', ELPA Syncer, 2023/07/01
- [elpa] externals/org 29cb0b370b 022/101: org-element-headline-parser: Defer property drawer values, ELPA Syncer, 2023/07/01
- [elpa] externals/org 44baf8f2b8 030/101: org-element-parse-buffer: New optional argument to not force undefer, ELPA Syncer, 2023/07/01
- [elpa] externals/org 13ae9b95f8 045/101: org-narrow-to-subtree: Use org-element API, ELPA Syncer, 2023/07/01
- [elpa] externals/org 3024e933c0 053/101: org-get-buffer-tags: Switch to org-element API, ELPA Syncer, 2023/07/01
- [elpa] externals/org def4bfa9c1 055/101: org-scan-tag: Switch to pure use of `org-element-cache-map', ELPA Syncer, 2023/07/01