\f
;;;; standard method combination
-;;; The STANDARD method combination type is implemented directly by the class
-;;; STANDARD-METHOD-COMBINATION. The method on COMPUTE-EFFECTIVE-METHOD does
-;;; standard method combination directly and is defined by hand in the file
-;;; combin.lisp. The method for FIND-METHOD-COMBINATION must appear in this
-;;; file for bootstrapping reasons.
-;;;
-;;; A commented out copy of this definition appears in combin.lisp.
-;;; If you change this definition here, be sure to change it there
-;;; also.
+;;; The STANDARD method combination type is implemented directly by
+;;; the class STANDARD-METHOD-COMBINATION. The method on
+;;; COMPUTE-EFFECTIVE-METHOD does standard method combination directly
+;;; and is defined by hand in the file combin.lisp. The method for
+;;; FIND-METHOD-COMBINATION must appear in this file for bootstrapping
+;;; reasons.
(defmethod find-method-combination ((generic-function generic-function)
(type (eql 'standard))
options)
(getf (cddr whole) :identity-with-one-argument nil))
(operator
(getf (cddr whole) :operator type)))
- (make-top-level-form `(define-method-combination ,type)
- '(:load-toplevel :execute)
- `(load-short-defcombin
- ',type ',operator ',identity-with-one-arg ',documentation))))
+ `(load-short-defcombin
+ ',type ',operator ',identity-with-one-arg ',documentation)))
(defun load-short-defcombin (type operator ioa doc)
(let* ((truename *load-truename*)
((equal options '(:most-specific-last)))
(t
(method-combination-error
- "Illegal options to a short method combination type.~%~
- The method combination type ~S accepts one option which~%~
- must be either :MOST-SPECIFIC-FIRST or :MOST-SPECIFIC-LAST."
- type)))
+ "Illegal options to a short method combination type.~%~
+ The method combination type ~S accepts one option which~%~
+ must be either :MOST-SPECIFIC-FIRST or :MOST-SPECIFIC-LAST."
+ type)))
(make-instance 'short-method-combination
:type type
:options options
(make-long-method-combination-function
type lambda-list method-group-specifiers arguments-option gf-var
body)
- (make-top-level-form `(define-method-combination ,type)
- '(:load-toplevel :execute)
- `(load-long-defcombin ',type ',documentation #',function)))))
+ `(load-long-defcombin ',type ',documentation #',function))))
(defvar *long-method-combination-functions* (make-hash-table :test 'eq))
(defun parse-qualifier-pattern (name pattern)
(cond ((eq pattern '()) `(null .qualifiers.))
- ((eq pattern '*) 't)
+ ((eq pattern '*) t)
((symbolp pattern) `(,pattern .qualifiers.))
((listp pattern) `(qualifier-check-runtime ',pattern .qualifiers.))
(t (error "In the method group specifier ~S,~%~