Declarations
classDefines a class.
defclassDefines a class and binds it to a global variable.
let-classDefines a class and binds it to a local variable.
mixinDefines a mixin.
defmixinDefines a mixin and binds it to a global variable.
let-mixinDefines a mixin and binds it to a local variable.
bind-classmacro!Registers a classmacro.
defclassmacroShorthand for bind-classmacro!.
defstructDefines a struct.
Class Clauses
nameDefines the name of a class.
mixinApplies mixins to a class definition.
fieldDefines one or more fields.
constDefines one or more associated constants.
metDefines a method.
propDefines a property.
initDefines an initializer method.
init-mixinDefines a mixin initializer method.
finiDefines a finalizer method.
fini-mixinDefines a mixin finalizer method.
wrapWraps another method in the same class.
wrap-propWraps another property in the same class.
stateDefines a class state.
state*Defines a class state which is enabled by default.
fsmDefines a set of mutually exclusive states.
init-stateDefines a state initializer method.
fini-stateDefines a state finalizer method.
Abbreviations
atsignAccesses a method's self-object.
@selfReturns a reference to a method's self-object.
@classEquivalent to (class-of @self).
@class-nameEquivalent to (class-name (class-of @self)).
@state-nameReturns the name of the enclosing state or state* form.
@fieldRefers to a property's backing field.
@baseInvokes a wrapped method, returning its result.
@enab!Equivalent to (enab! @self state-name ..args).
@enab?Equivalent to (enab? @self state-name).
@disab!Equivalent to (disab! @self state-name).
Functions
call-metInvokes a method.
has-met?Returns #t if the given name is bound to a method.
is?Returns #t if an object or RData belongs to the specified class.
class-ofReturns the class of an object or RData.
class-nameReturns the name of a class.
class-has-mixin?Returns #t if a class incorporates a particular mixin.
class-mixinsReturns all of a class' mixins.
mixin?Returns #t if a class is a mixin.
enab!Enables a state.
enab?Returns #t if a state is currently enabled.
disab!Disables a state.
has-state?Returns #t if an object or class has a particular state.
obj-kill!Permanently deactivates an object.
obj-killed?Returns #t if an object has been killed.