X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fpcl%2Fgeneric-functions.lisp;h=e3379e29c550d5233b4282db8d418be8f994f119;hb=fb76e3acd8b8a53cdadaa65bce1d090d99e004a0;hp=be8ddec39aa8ba21a7ce18675cdec9be79c58bdf;hpb=a1007bcf38130a9a08e32f04a69e6836f76329d2;p=sbcl.git diff --git a/src/pcl/generic-functions.lisp b/src/pcl/generic-functions.lisp index be8ddec..e3379e2 100644 --- a/src/pcl/generic-functions.lisp +++ b/src/pcl/generic-functions.lisp @@ -14,6 +14,8 @@ (defgeneric classp (object)) +(defgeneric condition-class-p (object)) + (defgeneric eql-specializer-p (object)) (defgeneric exact-class-specializer-p (object)) @@ -24,8 +26,6 @@ (defgeneric generic-function-p (object)) -(defgeneric legal-lambda-list-p (object x)) - (defgeneric method-combination-p (object)) (defgeneric method-p (object)) @@ -70,14 +70,10 @@ (defgeneric class-incompatible-superclass-list (pcl-class)) -(defgeneric class-initialize-info (slot-class)) - (defgeneric class-name (class)) (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)) @@ -166,23 +160,21 @@ (defgeneric (setf class-incompatible-superclass-list) (new-value pcl-class)) -(defgeneric (setf class-initialize-info) (new-value slot-class)) - (defgeneric (setf class-name) (new-value class)) (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)) @@ -196,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)) @@ -224,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)) @@ -237,8 +229,6 @@ ;;;; 1 argument -(defgeneric accessor-method-class (method)) - (defgeneric accessor-method-slot-name (m)) (defgeneric class-default-initargs (class)) @@ -319,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)) @@ -336,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)) @@ -383,7 +361,7 @@ (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)) @@ -393,12 +371,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): @@ -410,8 +382,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)) @@ -421,6 +393,8 @@ (defgeneric find-method-combination (generic-function type options)) +(defgeneric invalid-qualifiers (generic-function combin method)) + (defgeneric (setf slot-accessor-function) (function slotd type)) (defgeneric (setf slot-accessor-std-p) (value slotd type)) @@ -435,55 +409,59 @@ ;;;; 4 arguments +(defgeneric add-boundp-method (class generic-function slot-name slot-documentation)) + +(defgeneric add-reader-method (class generic-function slot-name slot-documentation)) + +(defgeneric add-writer-method (class generic-function slot-name slot-documentation)) + (defgeneric make-method-lambda (proto-generic-function - proto-method - lambda-expression - environment)) + proto-method + lambda-expression + 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)) + 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)) - -(defgeneric remove-named-method (generic-function-name - argument-specifiers - &optional extra)) + 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)) @@ -502,19 +480,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))