arnesi

API Reference

arnesi

A bag-of-tools utilities library used to aid in implementing the bese.it toolkit

IT.BESE.ARNESI.MOPP

A MOP compatabilitly layer.

This package wraps the various similar but slightly different MOP
APIs. All the MOP symbols are exported (even those which are
normally exported from the common-lisp package) though not all
maybe be properly defined on all lisps.

The name of the library in an acronym for "the Meta Object
Protocol Package".

This package is nominally part of the arnesi utility library but
has been written so that this single file can be included in
other applications without requiring the rest of the arnesi
library.

Implementation Notes:

1) The mopp package also exports the function
   SLOT-DEFINITION-DOCUMENTATION which while not strictly part of
   the MOP specification really should be and is implementened on
   most systems.

2) On Lispworks (tested only lightly) the MOPP package
   implementes an eql-specializer class and defines a version of
   method-specializers built upon clos:method-specializers which
   returns them.
  • Function SLOT-DEFINITION-DOCUMENTATION (slot)

Also exports

  • SB-MOP:COMPUTE-EFFECTIVE-SLOT-DEFINITION
  • SB-MOP:SPECIALIZER
  • COMMON-LISP:CLASS
  • COMMON-LISP:COMPUTE-APPLICABLE-METHODS
  • SB-MOP:SPECIALIZER-DIRECT-GENERIC-FUNCTIONS
  • SB-MOP:CLASS-DIRECT-SUPERCLASSES
  • SB-MOP:EXTRACT-SPECIALIZER-NAMES
  • SB-MOP:SLOT-DEFINITION-INITARGS
  • SB-MOP:FUNCALLABLE-STANDARD-OBJECT
  • SB-MOP:STANDARD-ACCESSOR-METHOD
  • SB-MOP:STANDARD-WRITER-METHOD
  • SB-MOP:STANDARD-DIRECT-SLOT-DEFINITION
  • SB-MOP:STANDARD-INSTANCE-ACCESS
  • SB-MOP:REMOVE-DEPENDENT
  • SB-MOP:SLOT-BOUNDP-USING-CLASS
  • SB-MOP:ENSURE-CLASS-USING-CLASS
  • SB-MOP:SLOT-DEFINITION-LOCATION
  • COMMON-LISP:STANDARD-METHOD
  • COMMON-LISP:CLASS-NAME
  • SB-MOP:SLOT-DEFINITION-WRITERS
  • SB-MOP:COMPUTE-SLOTS
  • SB-MOP:COMPUTE-APPLICABLE-METHODS-USING-CLASSES
  • SB-MOP:FIND-METHOD-COMBINATION
  • SB-MOP:CLASS-DIRECT-SLOTS
  • COMMON-LISP:STANDARD-CLASS
  • COMMON-LISP:METHOD-QUALIFIERS
  • COMMON-LISP:ALLOCATE-INSTANCE
  • SB-MOP:METAOBJECT
  • SB-MOP:CLASS-PROTOTYPE
  • SB-MOP:GENERIC-FUNCTION-ARGUMENT-PRECEDENCE-ORDER
  • SB-MOP:ENSURE-GENERIC-FUNCTION-USING-CLASS
  • SB-MOP:ACCESSOR-METHOD-SLOT-DEFINITION
  • SB-MOP:FORWARD-REFERENCED-CLASS
  • SB-MOP:METHOD-FUNCTION
  • COMMON-LISP:BUILT-IN-CLASS
  • SB-MOP:SLOT-DEFINITION-ALLOCATION
  • SB-MOP:STANDARD-EFFECTIVE-SLOT-DEFINITION
  • SB-MOP:ADD-DIRECT-METHOD
  • SB-MOP:CLASS-PRECEDENCE-LIST
  • SB-MOP:COMPUTE-DEFAULT-INITARGS
  • SB-MOP:EFFECTIVE-SLOT-DEFINITION
  • SB-MOP:STANDARD-SLOT-DEFINITION
  • SB-MOP:SET-FUNCALLABLE-INSTANCE-FUNCTION
  • SB-MOP:ADD-DEPENDENT
  • SB-MOP:SLOT-DEFINITION-INITFORM
  • SB-MOP:COMPUTE-CLASS-PRECEDENCE-LIST
  • SB-MOP:GENERIC-FUNCTION-LAMBDA-LIST
  • COMMON-LISP:ADD-METHOD
  • COMMON-LISP:METHOD-COMBINATION
  • SB-MOP:VALIDATE-SUPERCLASS
  • SB-MOP:GENERIC-FUNCTION-DECLARATIONS
  • SB-MOP:SPECIALIZER-DIRECT-METHODS
  • SB-MOP:EXTRACT-LAMBDA-LIST
  • SB-MOP:CLASS-FINALIZED-P
  • SB-MOP:EQL-SPECIALIZER
  • COMMON-LISP:MAKE-INSTANCE
  • SB-MOP:READER-METHOD-CLASS
  • SB-MOP:METHOD-LAMBDA-LIST
  • SB-MOP:MAKE-METHOD-LAMBDA
  • SB-MOP:SLOT-DEFINITION
  • SB-MOP:SLOT-DEFINITION-INITFUNCTION
  • COMMON-LISP:STANDARD-GENERIC-FUNCTION
  • SB-MOP:FUNCALLABLE-STANDARD-CLASS
  • SB-MOP:GENERIC-FUNCTION-NAME
  • SB-MOP:EQL-SPECIALIZER-OBJECT
  • COMMON-LISP:METHOD
  • SB-MOP:CLASS-DEFAULT-INITARGS
  • SB-MOP:GENERIC-FUNCTION-METHOD-COMBINATION
  • SB-MOP:CLASS-SLOTS
  • SB-MOP:FUNCALLABLE-STANDARD-INSTANCE-ACCESS
  • SB-MOP:FINALIZE-INHERITANCE
  • SB-MOP:GENERIC-FUNCTION-METHOD-CLASS
  • SB-MOP:UPDATE-DEPENDENT
  • SB-MOP:MAP-DEPENDENTS
  • SB-MOP:SLOT-DEFINITION-READERS
  • COMMON-LISP:STANDARD-OBJECT
  • SB-MOP:SLOT-DEFINITION-TYPE
  • SB-MOP:DIRECT-SLOT-DEFINITION-CLASS
  • SB-MOP:COMPUTE-DISCRIMINATING-FUNCTION
  • SB-MOP:SLOT-MAKUNBOUND-USING-CLASS
  • COMMON-LISP:REMOVE-METHOD
  • SB-MOP:INTERN-EQL-SPECIALIZER
  • SB-MOP:METHOD-GENERIC-FUNCTION
  • SB-MOP:REMOVE-DIRECT-SUBCLASS
  • SB-MOP:SLOT-DEFINITION-NAME
  • SB-MOP:EFFECTIVE-SLOT-DEFINITION-CLASS
  • SB-MOP:GENERIC-FUNCTION-METHODS
  • SB-MOP:COMPUTE-EFFECTIVE-METHOD
  • SB-MOP:REMOVE-DIRECT-METHOD
  • SB-MOP:DIRECT-SLOT-DEFINITION
  • COMMON-LISP:GENERIC-FUNCTION
  • COMMON-LISP:ENSURE-GENERIC-FUNCTION
  • SB-MOP:WRITER-METHOD-CLASS
  • SB-MOP:ADD-DIRECT-SUBCLASS
  • SB-MOP:STANDARD-READER-METHOD
  • SB-MOP:METHOD-SPECIALIZERS
  • SB-MOP:CLASS-DIRECT-SUBCLASSES
  • SB-MOP:CLASS-DIRECT-DEFAULT-INITARGS
  • SB-MOP:SLOT-VALUE-USING-CLASS

IT.BESE.ARNESI.MOPP%INTERNALS

No exported symbols.

IT.BESE.ARNESI

The arnesi utility suite.
  • Macro ENABLE-PF-SYNTAX (&optional (open-character #\[) (close-character #\]))
    Enable bracket reader for the rest of the file (being loaded or compiled). Be careful when using in different situations, because it modifies *readtable*.
  • Function ENABLE-PF-READER
    TODO Obsolete, to be removed. Use the enable-pf-syntax macro.
  • Function GETENV (var)
  • Class QUEUE
    HEAD-INDEX   Accessor: HEAD-INDEX
    TAIL-INDEX   Accessor: TAIL-INDEX
    BUFFER   Accessor: BUFFER
  • Method DEQUEUE ((queue queue) &optional (default-value nil))
  • Method PEEK-QUEUE ((queue queue))
  • Method QUEUE-LAST ((queue queue))
    Peak at the last element inserted into the queue.
  • Method QUEUE-POP ((queue queue) &optional (default-value nil))
    Pop off the front of the queue (the most recent element inserted)
  • Method QUEUE-EMPTY-P ((queue queue))
  • Method QUEUE-COUNT ((queue queue))
  • Method RANDOM-QUEUE-ELEMENT ((queue queue))
  • Method QUEUE-DELETE-IF ((queue queue) predicate &key (key #'identity))
    Destructively modifies the queue deleting elements where the predicate is true.
  • Method QUEUE->LIST ((queue queue))
  • Class LRU-QUEUE  (QUEUE)
    A queue which never grows. When an element is enqueued and the buffer is full we simply drop the last element.
    No slots.
  • Method ENQUEUE ((queue lru-queue) value)
  • Function TAIL (seq &optional (how-many 1))
    Returns the last HOW-MANY elements of the sequence SEQ. HOW-MANY is greater than (length SEQ) then all of SEQ is returned.
  • Function BUT-TAIL (seq &optional (how-many 1))
    Returns SEQ with the last HOW-MANY elements removed.
  • Function HEAD (seq &optional (how-many 1))
    Returns the first HOW-MANY elements of SEQ.
  • Function BUT-HEAD (seq &optional (how-many 1))
    Returns SEQ with the first HOW-MANY elements removed.
  • Function STARTS-WITH (sequence prefix &key (test #'eql) (return-suffix nil))
    Test whether the first elements of SEQUENCE are the same (as per TEST) as the elements of PREFIX. If RETURN-SUFFIX is T the functions returns, as a second value, a displaced array pointing to the sequence after PREFIX.
  • Function ENDS-WITH (seq1 seq2 &key (test #'eql))
    Test whether SEQ1 ends with SEQ2. In other words: return true if the last (length seq2) elements of seq1 are equal to seq2.
  • Function READ-SEQUENCE* (sequence stream &key (start 0) end)
    Like READ-SEQUENCE except the sequence is returned as well. The second value returned is READ-SEQUENCE's primary value, the primary value returned by READ-SEQUENCE* is the medified sequence.
  • Macro DELETEF (item sequence &rest delete-args &environment e)
    Delete ITEM from SEQUENCE, using cl:delete, and update SEQUENCE. DELETE-ARGS are passed directly to cl:delete.
  • Function COPY-ARRAY (array)
    Returns a fresh copy of ARRAY. The returned array will have the same dimensions and element-type, will not be displaced and will have the same fill-pointer as ARRAY. See http://thread.gmane.org/gmane.lisp.allegro/13 for the original implementation and discussion.
  • Function MAKE-DISPLACED-ARRAY (array &optional (start 0) (end (length array)))
  • Function LEVENSHTEIN-DISTANCE (source target &key (test #'eql))
  • Macro ENABLE-BRACKET-SYNTAX
    Enable bracket reader for the rest of the file (being loaded or compiled). Be careful when using in different situations, because it modifies *readtable*.
  • Macro ENABLE-BRACKET-READER
    TODO Obsolete, use the enable-bracket-syntax macro.
  • Function WITH-PACKAGE (package-name)
    When used as a specifier for the #{ reader locally rebinds, at read time, the current package to PACKAGE-NAME. For example, this: {(with-package :cl-user) t} Will always read cl:t, no matter what the current package actually is.
  • Function WITH-SHARP-L-SYNTAX
    To be used with the curly reader from arnesi: {with-sharp-l-syntax #L(typep !1 'foo)}
  • Macro ENABLE-SHARP-L-SYNTAX
  • Function ENABLE-SHARP-L
    TODO: Obsolete, to be removed. Use the enable-sharp-l-syntax macro.
  • Macro DEF-SPECIAL-ENVIRONMENT (name (&key accessor binder binder*) &rest vars)
    Define two macros for dealing with groups or related special variables. ACCESSOR is defined as a macro: (defmacro ACCESSOR (VARS &rest BODY)). Each element of VARS will be bound to the current (dynamic) value of the special variable. BINDER is defined as a macro for introducing (and binding new) special variables. It is basically a readable LET form with the prorpe declarations appended to the body. The first argument to BINDER must be a form suitable as the first argument to LET. ACCESSOR defaults to a new symbol in the same package as NAME which is the concatenation of "WITH-" NAME. BINDER is built as "BIND-" and BINDER* is BINDER "*".
  • Variable +LOWER-CASE-ASCII-ALPHABET+
    "abcdefghijklmnopqrstuvwxyz"
    All the lower case letters in 7 bit ASCII.
  • Variable +UPPER-CASE-ASCII-ALPHABET+
    "abcdefghijklmnopqrstuvwxyz"
    All the upper case letters in 7 bit ASCII.
  • Variable +ASCII-ALPHABET+
    "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz"
    All letters in 7 bit ASCII.
  • Variable +ALPHANUMERIC-ASCII-ALPHABET+
    "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz0123456789"
    All the letters and numbers in 7 bit ASCII.
  • Variable +BASE64-ALPHABET+
    "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz0123456789+/"
    All the characters allowed in base64 encoding.
  • Function RANDOM-STRING (&optional (length 32) (alphabet +ascii-alphabet+))
    Returns a random alphabetic string. The returned string will contain LENGTH characters chosen from the vector ALPHABET.
  • Function STRCAT (&rest items)
    Returns a fresh string consisting of ITEMS concat'd together.
  • Function STRCAT* (string-designators)
    Concatenate all the strings in STRING-DESIGNATORS.
  • Function JOIN-STRINGS (list)
  • Function FOLD-STRINGS (list)
  • Variable ~%
    (format nil "~%")
    A string containing a single newline
  • Variable ~T
    (string #\tab)
    A string containing a single tab character.
  • Variable +CR-LF+
    (make-array 2 :element-type 'character :initial-contents
                (list (code-char 13) (code-char 10)))
    A string containing the two characters CR and LF.
  • Function ~D (number &optional stream &key mincol pad-char)
  • Function ~A (object &optional stream)
  • Function ~S (object &optional stream)
  • Function ~W (object &optional stream)
  • Function STRING-TO-OCTETS (string encoding)
    Convert STRING, a list string, a vector of bytes according to ENCODING. ENCODING is a keyword representing the desired character encoding. We gurantee that :UTF-8, :UTF-16 and :ISO-8859-1 will work as expected. Any other values are simply passed to the underlying lisp's function and the results are implementation dependant. On CLISP we intern the ENCODING symbol in the CHARSET package and pass that. On SBCL we simply pass the keyword.
  • Function OCTETS-TO-STRING (octets encoding)
  • Function ENCODING-KEYWORD-TO-NATIVE (encoding)
    Convert ENCODING, a keyword, to an object the native list accepts as an encoding. ENCODING can be: :UTF-8, :UTF-16, or :US-ASCII and specify the corresponding encodings. Any other keyword is passed, as is, to the underlying lisp.
  • Function COLLECT-TIMING (lambda)
    Executes LAMBDA and returns a timing-info object specifying how long execution took and how much memory was used. NB: Not all implementations provide all information. See the various %collect-timing definitions for details.
  • Generic-Function UNWALK-FORM (form)
    Unwalk FORM and return a list representation.
  • Macro DEFUNWALKER-HANDLER (class (&rest slots) &body body)
  • Function UNWALK-FORMS (forms)
  • Method UNWALK-FORM ((form-33 constant-form))
  • Method UNWALK-FORM ((form-48 variable-reference))
  • Method UNWALK-FORM ((form-59 application-form))
  • Method UNWALK-FORM ((form-77 lambda-application-form))
  • Method UNWALK-FORM ((form-95 lambda-function-form))
  • Method UNWALK-FORM ((form-113 function-object-form))
  • Function UNWALK-LAMBDA-LIST (arguments)
  • Method UNWALK-FORM ((form-143 required-function-argument-form))
  • Method UNWALK-FORM ((form-154 specialized-function-argument-form))
  • Method UNWALK-FORM ((form-165 optional-function-argument-form))
  • Method UNWALK-FORM ((form-176 keyword-function-argument-form))
  • Method UNWALK-FORM ((form-187 allow-other-keys-function-argument-form))
  • Method UNWALK-FORM ((form-199 rest-function-argument-form))
  • Method UNWALK-FORM ((form-221 optimize-declaration-form))
  • Method UNWALK-FORM ((form-232 dynamic-extent-declaration-form))
  • Method UNWALK-FORM ((form-243 variable-ignorable-declaration-form))
  • Method UNWALK-FORM ((form-254 function-ignorable-declaration-form))
  • Method UNWALK-FORM ((form-265 special-declaration-form))
  • Method UNWALK-FORM ((form-276 type-declaration-form))
  • Method UNWALK-FORM ((form-287 ftype-declaration-form))
  • Method UNWALK-FORM ((form-298 notinline-declaration-form))
  • Method UNWALK-FORM ((form-309 block-form))
  • Method UNWALK-FORM ((form-327 return-from-form))
  • Method UNWALK-FORM ((form-338 catch-form))
  • Method UNWALK-FORM ((form-356 throw-form))
  • Method UNWALK-FORM ((form-367 eval-when-form))
  • Method UNWALK-FORM ((form-385 if-form))
  • Method UNWALK-FORM ((form-396 flet-form))
  • Method UNWALK-FORM ((form-424 labels-form))
  • Method UNWALK-FORM ((form-452 let-form))
  • Method UNWALK-FORM ((form-480 let*-form))
  • Method UNWALK-FORM ((form-508 load-time-value-form))
  • Method UNWALK-FORM ((form-519 locally-form))
  • Method UNWALK-FORM ((form-537 macrolet-form))
  • Method UNWALK-FORM ((form-555 multiple-value-call-form))
  • Method UNWALK-FORM ((form-573 multiple-value-prog1-form))
  • Method UNWALK-FORM ((form-591 progn-form))
  • Method UNWALK-FORM ((form-609 progv-form))
  • Method UNWALK-FORM ((form-627 setq-form))
  • Method UNWALK-FORM ((form-638 symbol-macrolet-form))
  • Method UNWALK-FORM ((form-656 tagbody-form))
  • Method UNWALK-FORM ((form-674 go-tag-form))
  • Method UNWALK-FORM ((form-685 go-form))
  • Method UNWALK-FORM ((form-696 the-form))
  • Method UNWALK-FORM ((form-707 unwind-protect-form))
  • Function VECTOR-PUSH-EXTEND* (vector &rest items)
  • Function STRING-FROM-ARRAY (array &key (start 0) (end (1- (length array))))
    Assuming ARRAY is an array of ASCII chars encoded as bytes return the corresponding string. Respect the C convention of null terminating strings. START and END specify the zero indexed offsets of a sub range of ARRAY.
  • Variable *WARN-UNDEFINED*
    nil
    When non-NIL any references to undefined functions or variables will signal a warning.
  • Function WALK-FORM (form &optional (parent nil) (env (make-walk-env)))
    Walk FORM and return a FORM object.
  • Function MAKE-WALK-ENV (&optional lexical-env)
  • Condition UNDEFINED-REFERENCE  (WARNING)
  • Condition UNDEFINED-VARIABLE-REFERENCE  (UNDEFINED-REFERENCE)
  • Condition UNDEFINED-FUNCTION-REFERENCE  (UNDEFINED-REFERENCE)
  • Macro DEFWALKER-HANDLER (name (form parent lexical-env) &body body)
  • Class FORM
    PARENT   Accessor: PARENT
    SOURCE   Accessor: SOURCE
  • Class IMPLICIT-PROGN-MIXIN
    BODY   Accessor: BODY
  • Class IMPLICIT-PROGN-WITH-DECLARE-MIXIN  (IMPLICIT-PROGN-MIXIN)
    DECLARES   Accessor: DECLARES
  • Class BINDING-FORM-MIXIN
    BINDS   Accessor: BINDS
  • Class DECLARATION-FORM  (FORM)
    No slots.
  • Function WALK-IMPLICT-PROGN (parent forms env &key docstring declare)
  • Class CONSTANT-FORM  (FORM)
    VALUE   Accessor: VALUE
  • Class VARIABLE-REFERENCE  (FORM)
    NAME   Accessor: NAME
  • Class LOCAL-VARIABLE-REFERENCE  (VARIABLE-REFERENCE)
    No slots.
  • Class LOCAL-LEXICAL-VARIABLE-REFERENCE  (LOCAL-VARIABLE-REFERENCE)
    A reference to a local variable defined in the lexical environment outside of the form passed to walk-form.
    No slots.
  • Class FREE-VARIABLE-REFERENCE  (VARIABLE-REFERENCE)
    No slots.
  • Class APPLICATION-FORM  (FORM)
    OPERATOR   Accessor: OPERATOR
    ARGUMENTS   Accessor: ARGUMENTS
  • Class LOCAL-APPLICATION-FORM  (APPLICATION-FORM)
    CODE   Accessor: CODE
  • Class LEXICAL-APPLICATION-FORM  (APPLICATION-FORM)
    No slots.
  • Class FREE-APPLICATION-FORM  (APPLICATION-FORM)
    No slots.
  • Class LAMBDA-APPLICATION-FORM  (APPLICATION-FORM)
    No slots.
  • Class FUNCTION-FORM  (FORM)
    No slots.
  • Class LAMBDA-FUNCTION-FORM  (FUNCTION-FORM, IMPLICIT-PROGN-WITH-DECLARE-MIXIN)
    ARGUMENTS   Accessor: ARGUMENTS
  • Class FUNCTION-OBJECT-FORM  (FORM)
    NAME   Accessor: NAME
  • Class LOCAL-FUNCTION-OBJECT-FORM  (FUNCTION-OBJECT-FORM)
    No slots.
  • Class FREE-FUNCTION-OBJECT-FORM  (FUNCTION-OBJECT-FORM)
    No slots.
  • Class LEXICAL-FUNCTION-OBJECT-FORM  (FUNCTION-OBJECT-FORM)
    No slots.
  • Function WALK-LAMBDA-LIST (lambda-list parent env &key allow-specializers macro-p)
  • Class FUNCTION-ARGUMENT-FORM  (FORM)
    NAME   Accessor: NAME
  • Class REQUIRED-FUNCTION-ARGUMENT-FORM  (FUNCTION-ARGUMENT-FORM)
    No slots.
  • Class SPECIALIZED-FUNCTION-ARGUMENT-FORM  (REQUIRED-FUNCTION-ARGUMENT-FORM)
    SPECIALIZER   Accessor: SPECIALIZER
  • Class OPTIONAL-FUNCTION-ARGUMENT-FORM  (FUNCTION-ARGUMENT-FORM)
    DEFAULT-VALUE   Accessor: DEFAULT-VALUE
    SUPPLIED-P-PARAMETER   Accessor: SUPPLIED-P-PARAMETER
  • Class KEYWORD-FUNCTION-ARGUMENT-FORM  (FUNCTION-ARGUMENT-FORM)
    KEYWORD-NAME   Accessor: KEYWORD-NAME
    DEFAULT-VALUE   Accessor: DEFAULT-VALUE
    SUPPLIED-P-PARAMETER   Accessor: SUPPLIED-P-PARAMETER
  • Class ALLOW-OTHER-KEYS-FUNCTION-ARGUMENT-FORM  (FUNCTION-ARGUMENT-FORM)
    No slots.
  • Class REST-FUNCTION-ARGUMENT-FORM  (FUNCTION-ARGUMENT-FORM)
    No slots.
  • Class BLOCK-FORM  (FORM, IMPLICIT-PROGN-MIXIN)
    NAME   Accessor: NAME
  • Class RETURN-FROM-FORM  (FORM)
    TARGET-BLOCK   Accessor: TARGET-BLOCK
    RESULT   Accessor: RESULT
  • Condition RETURN-FROM-UNKNOWN-BLOCK  (ERROR)
  • Class CATCH-FORM  (FORM, IMPLICIT-PROGN-MIXIN)
    TAG   Accessor: TAG
  • Class THROW-FORM  (FORM)
    TAG   Accessor: TAG
    VALUE   Accessor: VALUE
  • Class EVAL-WHEN-FORM  (FORM, IMPLICIT-PROGN-MIXIN)
    EVAL-WHEN-TIMES   Accessor: EVAL-WHEN-TIMES
  • Class IF-FORM  (FORM)
    CONSEQUENT   Accessor: CONSEQUENT
    THEN   Accessor: THEN
    ELSE   Accessor: ELSE
  • Class FUNCTION-BINDING-FORM  (FORM, BINDING-FORM-MIXIN, IMPLICIT-PROGN-WITH-DECLARE-MIXIN)
    No slots.
  • Class FLET-FORM  (FUNCTION-BINDING-FORM)
    No slots.
  • Class LABELS-FORM  (FUNCTION-BINDING-FORM)
    No slots.
  • Class VARIABLE-BINDING-FORM  (FORM, BINDING-FORM-MIXIN, IMPLICIT-PROGN-WITH-DECLARE-MIXIN)
    No slots.
  • Class LET-FORM  (VARIABLE-BINDING-FORM)
    No slots.
  • Class LET*-FORM  (VARIABLE-BINDING-FORM)
    No slots.
  • Class LOCALLY-FORM  (FORM, IMPLICIT-PROGN-WITH-DECLARE-MIXIN)
    No slots.
  • Class MACROLET-FORM  (FORM, BINDING-FORM-MIXIN, IMPLICIT-PROGN-WITH-DECLARE-MIXIN)
    No slots.
  • Class MULTIPLE-VALUE-CALL-FORM  (FORM)
    FUNC   Accessor: FUNC
    ARGUMENTS   Accessor: ARGUMENTS
  • Class MULTIPLE-VALUE-PROG1-FORM  (FORM)
    FIRST-FORM   Accessor: FIRST-FORM
    OTHER-FORMS   Accessor: OTHER-FORMS
  • Class PROGN-FORM  (FORM, IMPLICIT-PROGN-MIXIN)
    No slots.
  • Class PROGV-FORM  (FORM, IMPLICIT-PROGN-MIXIN)
    VARS-FORM   Accessor: VARS-FORM
    VALUES-FORM   Accessor: VALUES-FORM
  • Class SETQ-FORM  (FORM)
    VAR   Accessor: VAR
    VALUE   Accessor: VALUE
  • Class SYMBOL-MACROLET-FORM  (FORM, BINDING-FORM-MIXIN, IMPLICIT-PROGN-WITH-DECLARE-MIXIN)
    No slots.
  • Class TAGBODY-FORM  (FORM, IMPLICIT-PROGN-MIXIN)
    No slots.
  • Class GO-TAG-FORM  (FORM)
    NAME   Accessor: NAME
  • Class GO-FORM  (FORM)
    TARGET-PROGN   Accessor: TARGET-PROGN
    NAME   Accessor: NAME
    ENCLOSING-TAGBODY   Accessor: ENCLOSING-TAGBODY
  • Class THE-FORM  (FORM)
    TYPE-FORM   Accessor: TYPE-FORM
    VALUE   Accessor: VALUE
  • Class UNWIND-PROTECT-FORM  (FORM)
    PROTECTED-FORM   Accessor: PROTECTED-FORM
    CLEANUP-FORM   Accessor: CLEANUP-FORM

Also exports

  • COMMON-LISP:SET
  • COLLECTORS:WITH-COLLECTORS
  • COLLECTORS:MAKE-PUSHER
  • COLLECTORS:MAKE-COLLECTOR
  • COLLECTORS:WITH-COLLECTOR
  • COLLECTORS:WITH-APPENDER
  • COLLECTORS:WITH-REDUCER
  • COLLECTORS:MAKE-REDUCER
  • COLLECTORS:MAKE-APPENDER