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 ELEMENT)
Documentation
Return value for PROPERTY in current entry or ELEMENT.
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 element)
"Return value for PROPERTY in current entry or ELEMENT.
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."
(let ((element (or element
(and (org-element--cache-active-p)
(org-element-at-point nil 'cached)))))
(if element
(let* ((element (org-element-lineage element '(headline org-data inlinetask) 'with-self))
(base-value (org-element-property (intern (concat ":" (upcase property))) element))
(base-value (if literal-nil base-value (org-not-nil base-value)))
(extra-value (org-element-property (intern (concat ":" (upcase property) "+")) element))
(extra-value (if (listp extra-value) extra-value (list extra-value)))
(value (cons base-value extra-value)))
(and (not (equal value '(nil))) value))
(let ((range (org-get-property-block)))
(when range
(goto-char (car range))
(let* ((case-fold-search t)
(end (cdr range))
(value
;; Base value.
(save-excursion
(let ((v (and (re-search-forward
(org-re-property property nil t) end t)
(match-string-no-properties 3))))
(list (if literal-nil v (org-not-nil v)))))))
;; Find additional values.
(let* ((property+ (org-re-property (concat property "+") nil t)))
(while (re-search-forward property+ end t)
(push (match-string-no-properties 3) value)))
;; Return final values.
(and (not (equal value '(nil))) (nreverse value))))))))