Macro: DEFCLASS-STRUCT

Documentation

DEFCLASS with a DEFSTRUCT api. NAME-AND-OPTIONS: name-symbol | ( name-symbol [ (:conc-name conc-name ) ] [ (:predicate predicate-name ) ] ) SUPERS - a list of super classes passed directly to DEFCLASS. SLOTS - a list of slot forms: name | ( name [ init-arg ] [ slot-options* ] )

Source

(defmacro defclass-struct (name-and-options supers &rest slots)
  "DEFCLASS with a DEFSTRUCT api.

NAME-AND-OPTIONS:

  name-symbol |
  ( name-symbol [ (:conc-name conc-name ) ]
                [ (:predicate predicate-name ) ] )

SUPERS - a list of super classes passed directly to DEFCLASS.

SLOTS - a list of slot forms:

  name |
  ( name [ init-arg ] [ slot-options* ] )"
  (generate-defclass (first (ensure-list name-and-options))
                     (cdr (ensure-list name-and-options))
                     supers slots))
Source Context