branch: externals/sly commit f7c6048a236c3bf3ef160c789de8c25539b9e5bd Author: Stas Boukarev <stass...@gmail.com> Commit: João Távora <joaotav...@gmail.com>
arglist-dispatch: better handling of closer-mop wrappers. Display the arglist for the corresponding CL or SLYNK-MOP symbol. * contrib/slynk-arglists.lisp (arglist-dispatch): Rework. Co-authored-by: João Távora <joaotav...@gmail.com> Cherry-pick-from: SLIME commit 5139e51c29c9b9e5b6fdf4e083f38dbbd81d46e9 --- contrib/slynk-arglists.lisp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/contrib/slynk-arglists.lisp b/contrib/slynk-arglists.lisp index e3ac460..14755a8 100644 --- a/contrib/slynk-arglists.lisp +++ b/contrib/slynk-arglists.lisp @@ -1016,6 +1016,12 @@ If the arglist is not available, return :NOT-AVAILABLE.")) (:method (operator arguments) (unless (and (symbolp operator) (valid-operator-symbol-p operator)) (return-from arglist-dispatch :not-available)) + (when (equalp (package-name (symbol-package operator)) "closer-mop") + (let ((standard-symbol (or (find-symbol (symbol-name operator) :cl) + (find-symbol (symbol-name operator) :slynk-mop)))) + (when standard-symbol + (return-from arglist-dispatch + (arglist-dispatch standard-symbol arguments))))) (multiple-value-bind (decoded-arglist determining-args) (compute-enriched-decoded-arglist operator arguments)