sod-class-direct-superclasses sod-class-precedence-list
sod-class-chain-link sod-class-chain-head
sod-class-chain sod-class-chains
- sod-class-slots
+ sod-class-slots sod-class-initfrags sod-class-tearfrags
sod-class-instance-initializers sod-class-class-initializers
sod-class-messages sod-class-methods
sod-class-state
:accessor sod-class-instance-initializers)
(class-initializers :initarg :class-initializers :initform nil
:type list :accessor sod-class-class-initializers)
+ (initargs :initarg :initargs :initform nil
+ :type list :accessor sod-class-initargs)
+ (initfrags :initarg :initfrags :initform nil
+ :type list :accessor sod-class-initfrags)
+ (tearfrags :initarg :tearfrags :initform nil
+ :type list :accessor sod-class-tearfrags)
(messages :initarg :messages :initform nil
:type list :accessor sod-class-messages)
(methods :initarg :methods :initform nil
See `sod-initializer' for more details."))
+(export 'sod-initarg)
+(defclass sod-initarg ()
+ ((%class :initarg :class :type sod-class :reader sod-initarg-class)
+ (location :initarg :location :initform (file-location nil)
+ :type file-location :reader file-location)
+ (name :initarg :name :type string :reader sod-initarg-name)
+ (%type :initarg :type :type c-type :reader sod-initarg-type))
+ (:documentation
+ "Describes a keyword argument accepted by the initialization function."))
+
+(export 'sod-user-initarg)
+(defclass sod-user-initarg (sod-initarg)
+ ((default :initarg :default :type t :reader sod-initarg-default))
+ (:documentation
+ "Describes an initialization argument defined by the user."))
+
+(export 'sod-slot-initarg)
+(defclass sod-slot-initarg (sod-initarg)
+ ((slot :initarg :slot :type sod-slot :reader sod-initarg-slot))
+ (:documentation
+ "Describes an initialization argument used to initialize a slot."))
+
;;;--------------------------------------------------------------------------
;;; Messages and methods.