X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fpcl%2Fgeneric-functions.lisp;h=7d92d9a86cf2cd1b29edac440115bbf5a4750baf;hb=29193f72ababb585e5da518f98759f5d5f833957;hp=1b787ca86b75a73277e8f7a85f9c8c5488dd90e2;hpb=3b2fe8ed844834cfc975d63695fd2cb1b828f375;p=sbcl.git diff --git a/src/pcl/generic-functions.lisp b/src/pcl/generic-functions.lisp index 1b787ca..7d92d9a 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)) @@ -76,8 +74,6 @@ (defgeneric class-precedence-list (pcl-class)) -(defgeneric class-predicate-name (class)) - (defgeneric class-wrapper (pcl-class)) (defgeneric definition-source (definition-source-mixin)) @@ -106,9 +102,7 @@ (defgeneric method-combination-options (standard-method-combination)) -(defgeneric method-combination-type (standard-method-combination)) - -(defgeneric method-fast-function (standard-method)) +(defgeneric method-combination-type-name (standard-method-combination)) (defgeneric method-generic-function (standard-method)) @@ -171,16 +165,16 @@ (defgeneric (setf class-slots) (new-value slot-class)) (defgeneric (setf generic-function-method-class) (new-value - standard-generic-function)) + standard-generic-function)) (defgeneric (setf generic-function-method-combination) (new-value standard-generic-function)) (defgeneric (setf generic-function-declarations) (new-value - standard-generic-function)) + standard-generic-function)) (defgeneric (setf generic-function-methods) (new-value - standard-generic-function)) + standard-generic-function)) (defgeneric (setf generic-function-name) (new-value standard-generic-function)) @@ -194,7 +188,7 @@ (defgeneric (setf object-plist) (new-value plist-mixin)) (defgeneric (setf slot-definition-allocation) (new-value - standard-slot-definition)) + standard-slot-definition)) (defgeneric (setf slot-definition-boundp-function) (new-value effective-slot-definition)) @@ -222,7 +216,7 @@ (defgeneric (setf slot-definition-name) (new-value slot-definition)) (defgeneric (setf slot-definition-reader-function) (new-value - effective-slot-definition)) + effective-slot-definition)) (defgeneric (setf slot-definition-readers) (new-value slot-definition)) @@ -235,8 +229,6 @@ ;;;; 1 argument -(defgeneric accessor-method-class (method)) - (defgeneric accessor-method-slot-name (m)) (defgeneric class-default-initargs (class)) @@ -267,6 +259,8 @@ (defgeneric function-keywords (method)) +(defgeneric function-keyword-parameters (method)) + (defgeneric generic-function-argument-precedence-order (gf)) (defgeneric generic-function-lambda-list (gf)) @@ -283,8 +277,6 @@ (defgeneric method-lambda-list (m)) -(defgeneric method-pretty-arglist (method)) - (defgeneric method-qualifiers (m)) (defgeneric method-specializers (m)) @@ -317,6 +309,8 @@ (defgeneric add-method (generic-function method)) +(defgeneric (setf class-slot-cells) (new-value class)) + (defgeneric class-slot-value (class slot-name)) (defgeneric compatible-meta-class-change-p (class proto-new-class)) @@ -334,20 +328,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)) @@ -356,6 +336,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)) @@ -379,9 +361,11 @@ ;;; 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 (fsc class)) +(defgeneric validate-superclass (class superclass)) (defgeneric (setf documentation) (new-value slotd doc-type) (:argument-precedence-order doc-type slotd new-value)) @@ -391,12 +375,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): @@ -408,8 +386,8 @@ ;;; COMPUTE-EFFECTIVE-METHOD returns one value as do Allegro and ;;; Lispworks. (defgeneric compute-effective-method (generic-function - combin - applicable-methods)) + combin + applicable-methods)) (defgeneric compute-effective-slot-definition (class name dslotds)) @@ -435,51 +413,60 @@ ;;;; 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 (defgeneric get-method (generic-function - qualifiers - specializers - &optional errorp)) + qualifiers + specializers + &optional errorp)) (defgeneric find-method (generic-function - qualifiers - specializers - &optional errorp)) + qualifiers + specializers + &optional errorp)) (defgeneric slot-missing (class - instance - slot-name - operation - &optional new-value)) + instance + slot-name + operation + &optional new-value)) ;;;; &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 - name - &rest args - &key &allow-other-keys)) + name + &rest args + &key &allow-other-keys)) (defgeneric ensure-generic-function-using-class (generic-function - fun-name - &key &allow-other-keys)) + fun-name + &key &allow-other-keys)) (defgeneric initialize-instance (gf &key &allow-other-keys)) @@ -498,19 +485,19 @@ (defgeneric reinitialize-instance (gf &rest args &key &allow-other-keys)) (defgeneric shared-initialize (generic-function - slot-names - &key &allow-other-keys)) + slot-names + &key &allow-other-keys)) (defgeneric update-dependent (metaobject dependent &rest initargs)) (defgeneric update-instance-for-different-class (previous - current - &rest initargs)) + current + &rest initargs)) (defgeneric update-instance-for-redefined-class (instance - added-slots - discarded-slots - property-list - &rest initargs)) + added-slots + discarded-slots + property-list + &rest initargs)) (defgeneric writer-method-class (class direct-slot &rest initargs))