X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fpcl%2Fgeneric-functions.lisp;h=e0ed65af7fe6a6edec3f601eb4f4befec2c11909;hb=05e9b542c5700416b8fd9f3ba9bb91bb6ab84b3a;hp=498c72d6ca4ac403a435ebe91672da4ae7b94b7d;hpb=c70ef5922e4e5290fab52b90c3614be83c0b8f8b;p=sbcl.git diff --git a/src/pcl/generic-functions.lisp b/src/pcl/generic-functions.lisp index 498c72d..e0ed65a 100644 --- a/src/pcl/generic-functions.lisp +++ b/src/pcl/generic-functions.lisp @@ -26,8 +26,6 @@ (defgeneric generic-function-p (object)) -(defgeneric legal-lambda-list-p (object x)) - (defgeneric method-combination-p (object)) (defgeneric method-p (object)) @@ -106,8 +104,6 @@ (defgeneric method-combination-type-name (standard-method-combination)) -(defgeneric method-fast-function (standard-method)) - (defgeneric method-generic-function (standard-method)) (defgeneric object-plist (plist-mixin)) @@ -279,8 +275,6 @@ (defgeneric method-lambda-list (m)) -(defgeneric method-pretty-arglist (method)) - (defgeneric method-qualifiers (m)) (defgeneric method-specializers (m)) @@ -332,20 +326,6 @@ (defgeneric effective-slot-definition-class (class &rest initargs)) -(defgeneric legal-documentation-p (object x)) - -(defgeneric legal-method-function-p (object x)) - -(defgeneric legal-qualifier-p (object x)) - -(defgeneric legal-qualifiers-p (object x)) - -(defgeneric legal-slot-name-p (object x)) - -(defgeneric legal-specializer-p (object x)) - -(defgeneric legal-specializers-p (object x)) - (defgeneric make-boundp-method-function (class slot-name)) (defgeneric make-reader-method-function (class slot-name)) @@ -354,6 +334,8 @@ (defgeneric map-dependents (metaobject function)) +(defgeneric parse-specializer-using-class (generic-function specializer-name)) + (defgeneric remove-boundp-method (class generic-function)) (defgeneric remove-dependent (metaobject dependent)) @@ -377,6 +359,8 @@ ;;; This controls DESCRIBE-OBJECT (SLOT-OBJECT STREAM) behavior. (defgeneric slots-to-inspect (class object)) +(defgeneric unparse-specializer-using-class (generic-function specializer)) + (defgeneric update-gf-dfun (class gf)) (defgeneric validate-superclass (class superclass)) @@ -389,12 +373,6 @@ ;;;; 3 arguments -(defgeneric add-boundp-method (class generic-function slot-name)) - -(defgeneric add-reader-method (class generic-function slot-name)) - -(defgeneric add-writer-method (class generic-function slot-name)) - (defgeneric (setf class-slot-value) (nv class slot-name)) ;;; CMUCL comment (from Gerd Moellmann/Pierre Mai, 2002-10-19): @@ -433,20 +411,27 @@ ;;;; 4 arguments -(defgeneric make-method-lambda (proto-generic-function - proto-method - lambda-expression - environment)) +(defgeneric make-method-lambda + (proto-generic-function proto-method lambda-expression environment)) + +(defgeneric make-method-specializers-form + (proto-generic-function proto-method specializer-names environment)) (defgeneric (setf slot-value-using-class) (new-value class object slotd)) ;;;; 5 arguments -(defgeneric make-method-initargs-form (proto-generic-function - proto-method - lambda-expression - lambda-list - environment)) +;;; FIXME: This is currently unused -- where should we call it? Or should we just +;;; delete it. +(defgeneric add-boundp-method (class generic-function slot-name slot-documentation source-location)) + +(defgeneric add-reader-method (class generic-function slot-name slot-documentation source-location)) + +(defgeneric add-writer-method (class generic-function slot-name slot-documentation source-location)) + +(defgeneric make-method-initargs-form + (proto-generic-function proto-method lambda-expression lambda-list + environment)) ;;;; optional arguments @@ -468,6 +453,8 @@ ;;;; &KEY arguments +;;; FIXME: make the declared &KEY arguments here agree with those that +;;; AMOP specifies. (defgeneric allocate-instance (class &rest initargs)) (defgeneric ensure-class-using-class (class