ToC | DocOverview | CGDoc | RelNotes | Index | PermutedIndex
| Allegro CL

| ANSI Common Lisp 4 Types and Classes 4.3 Classes ### 4.3.2 Defining Classes The macro defclass is used to define a new named class. The definition of a class includes: The name of the new class. For newly-defined classes this name is a proper name. The list of the direct superclasses of the new class. A set of slot specifiers. Each slot specifier includes the name of the slot and zero or more slot options. A slot option pertains only to a single slot. If a class definition contains two slot specifiers with the same name, an error is signaled. A set of class options. Each class option pertains to the class as a whole. The slot options and class options of the defclass form provide mechanisms for the following: Supplying a default initial value form for a given slot. Requesting that methods for generic functions be automatically generated for reading or writing slots. Controlling whether a given slot is shared by all instances of the class or whether each instance of the class has its own slot. Supplying a set of initialization arguments and initialization argument defaults to be used in instance creation. Indicating that the metaclass is to be other than the default. The `:metaclass` option is reserved for future use; an implementation can be extended to make use of the `:metaclass` option. Indicating the expected type for the value stored in the slot. Indicating the documentation string for the slot.

© Franz Inc. All Rights Reserved - File last updated 2022-07-25