Function: org-element--cache-persist-before-write
org-element--cache-persist-before-write is a byte-compiled function
defined in org-element.el.gz.
Signature
(org-element--cache-persist-before-write CONTAINER &optional ASSOCIATED)
Documentation
Sync cache before saving.
Source Code
;; Defined in /usr/src/emacs/lisp/org/org-element.el.gz
;;; Cache persistence
(defun org-element--cache-persist-before-write (container &optional associated)
"Sync cache before saving."
(when (equal container '(elisp org-element--cache))
(if (and org-element-use-cache
(plist-get associated :file)
(get-file-buffer (plist-get associated :file))
org-element-cache-persistent)
(with-current-buffer (get-file-buffer (plist-get associated :file))
(if (and (derived-mode-p 'org-mode)
org-element--cache)
(org-with-wide-buffer
(org-element--cache-sync (current-buffer) (point-max))
;; Cleanup cache request keys to avoid collisions during next
;; Emacs session.
(avl-tree-mapc
(lambda (el)
(org-element-put-property el :org-element--cache-sync-key nil))
org-element--cache)
nil)
'forbid))
'forbid)))