Function Defclass-Brief

Part of:

package metabang.utilities
( defclass-brief < name > < superclasses > < slots > &rest < class-options > )
A macro with simpler syntax than `defclass' that allows some briefer ways of expressing things. The syntax is more like `defstruct.' A documentation string is optional. Each slot is expressed as either a bare symbol, or a list of the name of the slot, its initial value, a symbol with the letters I, R, A, standing for :initarg, :reader and :accessor, and a documentation string. The symbol, whose package is unimportant, determines the generation of reader, accessor and so forth; the names are the same as the slot name. All other CLOS options are processed normally. In addition, three new class options are defined. :AUTOMATIC-ACCESSORS means that an accessor is defined for every slot :AUTOMATIC-INITARGS means that an initarg is defined for every slot (:NAME-PREFIX <symbol> <separator>) (:NAME-POSTFIX <separator> <symbol>) prepends or appends `symbol' with `separator' to each slot accessor. The default symbol is the class name and the default separator is the hypen, in which case the wrapping parentheses are optional.