From c28ba117782cd825b2a4dd6ffcc0206ecf36898e Mon Sep 17 00:00:00 2001 From: Dmitry Gutov Date: Thu, 18 Mar 2021 02:35:10 +0200 Subject: [PATCH] Leave signaling the exact error to cl-generic's internals * lisp/progmodes/project.el (project-root): Extract default definition to a new method, predicated on a context (https://lists.gnu.org/archive/html/emacs-devel/2021-03/msg00771.html). --- lisp/progmodes/project.el | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/lisp/progmodes/project.el b/lisp/progmodes/project.el index 65897b008ca..bd552c917ac 100644 --- a/lisp/progmodes/project.el +++ b/lisp/progmodes/project.el @@ -216,10 +216,12 @@ of the project instance object." It usually contains the main build file, dependencies configuration file, etc. Though neither is mandatory. -The directory name must be absolute." - (if project--within-roots-fallback - (signal 'cl-no-applicable-method (list 'project-root project)) - (car (project-roots project)))) +The directory name must be absolute.") + +(cl-defmethod project-root (project + &context (project--within-roots-fallback + (eql nil))) + (car (project-roots project))) (cl-defgeneric project-roots (project) "Return the list containing the current project root. -- 2.39.5