emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[nongnu] externals/sly f7c6048 08/47: arglist-dispatch: better handling


From: ELPA Syncer
Subject: [nongnu] externals/sly f7c6048 08/47: arglist-dispatch: better handling of closer-mop wrappers.
Date: Thu, 17 Dec 2020 18:57:13 -0500 (EST)

branch: externals/sly
commit f7c6048a236c3bf3ef160c789de8c25539b9e5bd
Author: Stas Boukarev <stassats@gmail.com>
Commit: João Távora <joaotavora@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 <joaotavora@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)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]