 LOCATION is the super-key to store this cache item under. It defaults to
 `doom-store-location'."
   (cl-check-type ttl (or null integer function))
-  (let ((location (or location doom-store-location)))
-    (puthash key (cons (if (integerp ttl)
-                           (time-add (current-time) ttl)
-                         ttl)
-                       value)
-             (doom--store-init location))
-    (unless noflush
-      (doom--store-flush location))))
+  (puthash key (cons (if (integerp ttl)
+                         (time-add (current-time) ttl)
+                       ttl)
+                     value)
+           (doom--store-init location))
+  (unless noflush
+    (doom--store-flush location)))
 
 ;;;###autoload
 (defun doom-store-rem (key &optional location noflush)
   "Clear a cache LOCATION (defaults to `doom-store-location')."
-  (let ((location (or location doom-store-location)))
-    (remhash key (doom--store-init location))
-    (unless noflush
-      (doom--store-flush location))))
+  (remhash key (doom--store-init location))
+  (unless noflush
+    (doom--store-flush location)))
 
 ;;;###autoload
 (defun doom-store-member-p (key &optional location)

;;;###autoload
(defun doom-store-clear (&optional location)
  "Clear the store at LOCATION (defaults to `doom-store-location')."
  (cl-check-type location (or null string))
  (let* ((location (or location doom-store-location))
         (path (expand-file-name location doom-store-dir)))
    (remhash location doom--store-table)



;;
;;; Library

;;;###autoload
(defun doom-store-persist (location variables)
  "Persist VARIABLES (list of symbols) in LOCATION (symbol).
This populates these variables with cached values, if one exists, and saves them
to file when Emacs quits. This cannot persist buffer-local variables."
  (cl-check-type location string)
  (dolist (var variables)
    (when (doom-store-member-p var location)
      (set var (doom-store-get var location))))
