Commit bb4399f6 authored by Eric Ludlam's avatar Eric Ludlam Committed by Stefan Monnier


(ede-calc-fromconfig): New method.  Support functions in addition to
string matchers.
(ede-dirmatch-installed, ede-do-dirmatch):
Use `ede-calc-fromconfig' to do conversion.
Author: Eric Ludlam <>
parent 002f9dc0
Pipeline #8642 failed with stage
in 63 minutes and 16 seconds
......@@ -64,24 +64,22 @@ location is varied dependent on other complex criteria, this class
can be used to define that match without loading the specific project
into memory.")
(cl-defmethod ede-calc-fromconfig ((dirmatch ede-project-autoload-dirmatch))
"Calculate the value of :fromconfig from DIRMATCH."
(let* ((fc (oref dirmatch fromconfig))
(found (cond ((stringp fc) fc)
((functionp fc) (funcall fc))
(t (error "Unknown dirmatch object match style.")))))
(expand-file-name found)
(cl-defmethod ede-dirmatch-installed ((dirmatch ede-project-autoload-dirmatch))
"Return non-nil if the tool DIRMATCH might match is installed on the system."
(let ((fc (oref dirmatch fromconfig)))
;; If the thing to match is stored in a config file.
((stringp fc)
(file-exists-p fc))
;; Add new types of dirmatches here.
;; Error for weird stuff
(t (error "Unknown dirmatch type.")))))
(file-exists-p (ede-calc-fromconfig dirmatch)))
(cl-defmethod ede-do-dirmatch ((dirmatch ede-project-autoload-dirmatch) file)
"Does DIRMATCH match the filename FILE."
(let ((fc (oref dirmatch fromconfig)))
(let ((fc (ede-calc-fromconfig dirmatch)))
;; If the thing to match is stored in a config file.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment