X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/sod/blobdiff_plain/0dca577dbc1360385c0f21a33ceebb2575275e05..3a774b55edfea441c1715994924c2999e9202143:/src/class-make-impl.lisp diff --git a/src/class-make-impl.lisp b/src/class-make-impl.lisp index 78f8fed..7495c01 100644 --- a/src/class-make-impl.lisp +++ b/src/class-make-impl.lisp @@ -146,9 +146,10 @@ (defmethod shared-initialize :after (defmethod make-sod-user-initarg ((class sod-class) name type pset &optional default location) - (declare (ignore pset)) (with-slots (initargs) class - (push (make-instance 'sod-user-initarg :location (file-location location) + (push (make-instance (get-property pset :initarg-class :symbol + 'sod-user-initarg) + :location (file-location location) :class class :name name :type type :default default) initargs))) @@ -159,10 +160,10 @@ (defmethod make-sod-slot-initarg (defmethod make-sod-slot-initarg-using-slot ((class sod-class) name (slot sod-slot) pset &optional location) - (declare (ignore pset)) (with-slots (initargs) class (with-slots ((type %type)) slot - (push (make-instance 'sod-slot-initarg + (push (make-instance (get-property pset :initarg-class :symbol + 'sod-slot-initarg) :location (file-location location) :class class :name name :type type :slot slot) initargs))))