Changeset 12169


Ignore:
Timestamp:
10/03/09 10:29:02 (12 years ago)
Author:
ehuelsmann
Message:

Sort out my thoughts: Add documentation.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/abcl/src/org/armedbear/lisp/Binding.java

    r12168 r12169  
    3434package org.armedbear.lisp;
    3535
     36/** Used by the environment to capture different kinds of bindings:
     37 * tags, blocks, functions and variables.
     38 *
     39 */
    3640// Package accessibility.
    3741final class Binding
    3842{
     43    /** The symbol in case of a variable, block or
     44     * non-SETF function binding, the tag (symbol or
     45     * integer) in case of a tag binding or the cons
     46     * in case of a SETF function binding
     47     */
    3948    final LispObject symbol;
     49
     50    /** Used only for tags. Refers to the environment
     51     * relating to the tagbody in which the tag was created.
     52     *
     53     */
    4054    LispObject tagbody = null;
     55
     56    /** The value bound.
     57     *
     58     * In case of a block binding, it holds the block identifier to be used
     59     * with the Return to be thrown.
     60     *
     61     * In case of a tagbody, it holds the tail subforms of the tagbody, of
     62     * which the tag is the first subform.
     63     *
     64     * In case of a function binding, it holds the function object.
     65     *
     66     * In case of a variable binding, it holds the value associated with the
     67     * variable, unless specialp is true.
     68     */
    4169    LispObject value;
     70
     71    /** Only used for variable bindings. Indicates whether or not the value
     72     * should be retrieved from the dynamic environment or from this binding.
     73     */
    4274    boolean specialp;
    4375    final Binding next;
Note: See TracChangeset for help on using the changeset viewer.