(defgeneric function-keywords (method))
+(defgeneric function-keyword-parameters (method))
+
(defgeneric generic-function-argument-precedence-order (gf))
(defgeneric generic-function-lambda-list (gf))
(early-method-lambda-list method)
(method-lambda-list method)))
(declare (ignore nreq nopt keysp restp keywords))
+ (values keywords allow-other-keys-p)))
+
+(defmethod function-keyword-parameters ((method standard-method))
+ (multiple-value-bind (nreq nopt keysp restp allow-other-keys-p
+ keywords keyword-parameters)
+ (analyze-lambda-list (if (consp method)
+ (early-method-lambda-list method)
+ (method-lambda-list method)))
+ (declare (ignore nreq nopt keysp restp keywords))
(values keyword-parameters allow-other-keys-p)))
(defun method-ll->generic-function-ll (ll)
(let ((methods.keys nil) (methods.allowp nil))
(dolist (m methods)
(multiple-value-bind (m.keyparams m.allow-other-keys)
- (function-keywords m)
+ (function-keyword-parameters m)
(setq methods.keys (union methods.keys m.keyparams :key #'maybe-car))
(setq methods.allowp (or methods.allowp m.allow-other-keys))))
(let ((arglist '()))
;;; checkins which aren't released. (And occasionally for internal
;;; versions, especially for internal versions off the main CVS
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"1.0.18.18"
+"1.0.18.19"