Function: org--property-local-values
org--property-local-values is a byte-compiled function defined in
org.el.gz.
Signature
(org--property-local-values PROPERTY LITERAL-NIL &optional EPOM)
Documentation
Return value for PROPERTY in current entry or at EPOM.
EPOM can be point, marker, or syntax node.
Value is a list whose car is the base value for PROPERTY and cdr a list of accumulated values. Return nil if neither is found in the entry. Also return nil when PROPERTY is set to "nil", unless LITERAL-NIL is non-nil.
Source Code
;; Defined in /usr/src/emacs/lisp/org/org.el.gz
(defun org--property-local-values (property literal-nil &optional epom)
"Return value for PROPERTY in current entry or at EPOM.
EPOM can be point, marker, or syntax node.
Value is a list whose car is the base value for PROPERTY and cdr
a list of accumulated values. Return nil if neither is found in
the entry. Also return nil when PROPERTY is set to \"nil\",
unless LITERAL-NIL is non-nil."
(setq epom
(org-element-lineage
(org-element-at-point epom)
'(headline inlinetask org-data)
'with-self))
(let* ((base-value (org-element-property (intern (concat ":" (upcase property) )) epom))
(extra-value (org-element-property (intern (concat ":" (upcase property) "+")) epom))
(extra-value (if (listp extra-value) extra-value (list extra-value)))
(value (if literal-nil (cons base-value extra-value)
(cons (org-not-nil base-value) (org-not-nil extra-value)))))
(and (not (equal value '(nil))) value)))