Skip to main content

built-in-class

built-in-class System Class

Class Precedence List:

built-in-class, class, standard-object, t

Description:

A built-in class is a class whose instances have restricted capabilities or special representations. Attempting to use defclass to define subclasses of a built-in class signals an error of type error. Calling make-instance to create an instance of a built-in class signals an error of type error. Calling slot-value on an instance of a built-in class signals an error of type error. Redefining a built-in class or using change-class to change the class of an instance to or from a built-in class signals an error of type error. However, built-in classes can be used as parameter specializers in methods.

Expanded Reference: built-in-class

The built-in-class Metaclass

built-in-class is the metaclass of classes whose instances are handled with special, optimized representations by the implementation. Examples include integer, string, cons, and character.

(typep (find-class 'integer) 'built-in-class)
=> T

(typep (find-class 'cons) 'built-in-class)
=> T

Not a CLOS standard-class

Built-in classes cannot be subclassed with defclass in a portable way. They have a different metaclass than user-defined classes.

(class-of (find-class 'integer))
==> #<STANDARD-CLASS BUILT-IN-CLASS>

(class-of (find-class 'standard-object))
==> #<STANDARD-CLASS STANDARD-CLASS>