Changeset 14482


Ignore:
Timestamp:
04/24/13 12:51:25 (9 years ago)
Author:
rschlatte
Message:

Move forward-referenced-class metaclass definition into Lisp

Location:
trunk/abcl/src/org/armedbear/lisp
Files:
3 edited

Legend:

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

    r14480 r14482  
    470470  public static final StandardClass BUILT_IN_CLASS =
    471471    addStandardClass(Symbol.BUILT_IN_CLASS, list(CLASS));
    472 
    473   public static final StandardClass FORWARD_REFERENCED_CLASS =
    474     addStandardClass(Symbol.FORWARD_REFERENCED_CLASS, list(CLASS));
    475472
    476473  public static final StandardClass FUNCALLABLE_STANDARD_CLASS =
     
    644641                                    ERROR, SERIOUS_CONDITION, CONDITION,
    645642                                    STANDARD_OBJECT, BuiltInClass.CLASS_T);
    646     FORWARD_REFERENCED_CLASS.setCPL(FORWARD_REFERENCED_CLASS, CLASS,
    647                                     SPECIALIZER, METAOBJECT, STANDARD_OBJECT, BuiltInClass.CLASS_T);
    648     // Not all of these slots are necessary, but for now we take the
    649     // standard layout.  Instances of this class will be redefined and
    650     // get a new layout in due course.
    651     FORWARD_REFERENCED_CLASS.setClassLayout(layoutStandardClass);
    652     FORWARD_REFERENCED_CLASS.setDirectSlotDefinitions(standardClassSlotDefinitions());
    653643    FUNCALLABLE_STANDARD_OBJECT.setCPL(FUNCALLABLE_STANDARD_OBJECT,
    654644                                       STANDARD_OBJECT, BuiltInClass.FUNCTION,
     
    756746    FUNCALLABLE_STANDARD_OBJECT.finalizeClass();
    757747    FUNCALLABLE_STANDARD_CLASS.finalizeClass();
    758     FORWARD_REFERENCED_CLASS.finalizeClass();
    759748    GENERIC_FUNCTION.finalizeClass();
    760749    ARITHMETIC_ERROR.finalizeClass();
  • trunk/abcl/src/org/armedbear/lisp/Symbol.java

    r14480 r14482  
    30973097  public static final Symbol FLOAT_OVERFLOW_MODE =
    30983098    PACKAGE_SYS.addExternalSymbol("FLOAT-OVERFLOW-MODE");
    3099   public static final Symbol FORWARD_REFERENCED_CLASS =
    3100     PACKAGE_SYS.addExternalSymbol("FORWARD-REFERENCED-CLASS");
    31013099  public static final Symbol GETHASH1 =
    31023100    PACKAGE_SYS.addExternalSymbol("GETHASH1");
  • trunk/abcl/src/org/armedbear/lisp/clos.lisp

    r14479 r14482  
    119119  (find-class 'funcallable-standard-object))
    120120(defconstant +the-standard-method-class+ (find-class 'standard-method))
    121 (defconstant +the-forward-referenced-class+
    122   (find-class 'forward-referenced-class))
    123121(defconstant +the-standard-generic-function-class+
    124122  (find-class 'standard-generic-function))
     
    209207                    'standard-effective-slot-definition)
    210208    (add-subclasses 'class
    211                     '(built-in-class forward-referenced-class standard-class
    212                       funcallable-standard-class))))
     209                    '(built-in-class standard-class funcallable-standard-class))))
    213210(fixup-standard-class-hierarchy)
    214211
     
    953950(defconstant +the-structure-class+ (find-class 'structure-class))
    954951
     952(define-primordial-class forward-referenced-class (class)
     953  ;; The standard-class layout.  Not all of these slots are necessary,
     954  ;; but at least NAME and DIRECT-SUBCLASSES are.
     955  ((sys::name :initarg :name :initform nil)
     956   (sys::layout :initform nil)
     957   (sys::direct-superclasses :initform nil)
     958   (sys::direct-subclasses :initform nil)
     959   (sys::precedence-list :initform nil)
     960   (sys::direct-methods :initform nil)
     961   (sys::direct-slots :initform nil)
     962   (sys::slots :initform nil)
     963   (sys::direct-default-initargs :initform nil)
     964   (sys::default-initargs :initform nil)
     965   (sys::finalized-p :initform nil)
     966   (sys::%documentation :initform nil)))
     967(defconstant +the-forward-referenced-class+
     968  (find-class 'forward-referenced-class))
    955969
    956970(defvar *extensible-built-in-classes*
Note: See TracChangeset for help on using the changeset viewer.