Function: project--get-cached

project--get-cached is a byte-compiled function defined in project.el.gz.

Signature

(project--get-cached DIR KEY TIMEOUT)

Source Code

;; Defined in /usr/src/emacs/lisp/progmodes/project.el.gz
(defun project--get-cached (dir key timeout)
  (let ((cached (vc-file-getprop dir key))
        (current-time (float-time)))
    (when (and (numberp (cdr cached))
               ;; Support package upgrade mid-session.
               (let* ((timeout
                       (cond
                        ((numberp timeout)
                         timeout)
                        ((listp timeout)
                         (cdr
                          (seq-find (lambda (pair)
                                      (and (functionp (car pair))
                                           (funcall (car pair) dir)))
                                    timeout)))
                        (t nil))))
                 (or (null timeout)
                     (< (- current-time (cdr cached)) timeout))))
      (car cached))))