Function: org-export-data-with-backend
org-export-data-with-backend is a byte-compiled function defined in
ox.el.gz.
Signature
(org-export-data-with-backend DATA BACKEND INFO)
Documentation
Convert DATA into BACKEND format.
DATA is an element, an object, a secondary string or a string. BACKEND is a symbol. INFO is a plist used as a communication channel.
Unlike to org-export-with-backend, this function will
recursively convert DATA using BACKEND translation table.
Source Code
;; Defined in /usr/src/emacs/lisp/org/ox.el.gz
(defun org-export-data-with-backend (data backend info)
"Convert DATA into BACKEND format.
DATA is an element, an object, a secondary string or a string.
BACKEND is a symbol. INFO is a plist used as a communication
channel.
Unlike to `org-export-with-backend', this function will
recursively convert DATA using BACKEND translation table."
(when (symbolp backend) (setq backend (org-export-get-backend backend)))
;; Set-up a new communication channel with translations defined in
;; BACKEND as the translate table and a new hash table for
;; memoization.
(let ((new-info
(org-combine-plists
info
(list :back-end backend
:translate-alist (org-export-get-all-transcoders backend)
;; Size of the hash table is reduced since this
;; function will probably be used on small trees.
:exported-data (make-hash-table :test 'eq :size 401)))))
(prog1 (org-export-data data new-info)
;; Preserve `:internal-references', as those do not depend on
;; the backend used; we need to make sure that any new
;; reference when the temporary backend was active gets through
;; the default one.
(plist-put info :internal-references
(plist-get new-info :internal-references)))))