Skip to content

Commit a8faed0

Browse files
committed
Accept symbols for system names in several places.
The symbols designate a system name by their downcased symbol-name. For issue #102.
1 parent 32456dd commit a8faed0

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

quicklisp/dist.lisp

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -962,7 +962,18 @@ the given NAME."
962962
(call-next-method)
963963
(preference (release system))))
964964

965+
(defun thing-name-designator (designator)
966+
"Convert DESIGNATOR to a string naming a thing. Strings are used
967+
as-is, symbols are converted to their downcased symbol-name."
968+
(typecase designator
969+
(string designator)
970+
(symbol (string-downcase designator))
971+
(t
972+
(error "~S is not a valid designator for a system or release"
973+
designator))))
974+
965975
(defun find-thing-named (find-fun name)
976+
(setf name (thing-name-designator name))
966977
(let ((result '()))
967978
(dolist (dist (enabled-dists) (sort result #'> :key #'preference))
968979
(let ((thing (funcall find-fun name dist)))
@@ -1035,6 +1046,8 @@ FUN."
10351046

10361047

10371048
(defgeneric dependency-tree (system)
1049+
(:method ((symbol symbol))
1050+
(dependency-tree (string-downcase symbol)))
10381051
(:method ((string string))
10391052
(let ((system (find-system string)))
10401053
(when system
@@ -1057,6 +1070,8 @@ FUN."
10571070

10581071

10591072
(defgeneric system-apropos (term)
1073+
(:method ((term symbol))
1074+
(system-apropos (string-downcase term)))
10601075
(:method ((term string))
10611076
(dolist (system (provided-systems t))
10621077
(when (or (search term (name system))

0 commit comments

Comments
 (0)