Function: majutsu-diff--revision-metadata

majutsu-diff--revision-metadata is a natively compiled function defined in majutsu-diff.el.

Signature

(majutsu-diff--revision-metadata)

Documentation

Return cached metadata for the current single-revision diff.

The cache key includes formatting arguments, range arguments, and the selected revision. Consequently changing any diff argument or revision invalidates the cache while the two metadata section inserters share one query.

Source Code

;; Defined in /nix/store/jagqw3nms546pad0gxi5f3wsckk6pji7-emacs-packages-deps/share/emacs/site-lisp/majutsu-diff.el
(defun majutsu-diff--revision-metadata ()
  "Return cached metadata for the current single-revision diff.
The cache key includes formatting arguments, range arguments, and the
selected revision.  Consequently changing any diff argument or revision
invalidates the cache while the two metadata section inserters share one
query."
  (let* ((rev (majutsu-diff--metadata-revision))
         (key (list (copy-sequence majutsu-buffer-diff-args)
                    (copy-sequence majutsu-buffer-diff-range)
                    rev)))
    (if (and majutsu-diff--revision-metadata-cache
             (equal key (car majutsu-diff--revision-metadata-cache)))
        (cdr majutsu-diff--revision-metadata-cache)
      (let ((metadata (and rev (majutsu-diff--query-revision-metadata rev))))
        (setq majutsu-diff--revision-metadata-cache (cons key metadata))
        metadata))))