Changeset 13773


Ignore:
Timestamp:
01/14/12 16:37:32 (9 years ago)
Author:
rschlatte
Message:

introduce funcallable-standard-object.

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

Legend:

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

    r13726 r13773  
    422422
    423423  // BuiltInClass.FUNCTION is also null here (see previous comment).
     424  public static final StandardClass FUNCALLABLE_STANDARD_OBJECT =
     425      addStandardClass(Symbol.FUNCALLABLE_STANDARD_OBJECT,
     426                       list(STANDARD_OBJECT, BuiltInClass.FUNCTION));
     427
    424428  public static final StandardClass GENERIC_FUNCTION =
    425     addStandardClass(Symbol.GENERIC_FUNCTION, list(METAOBJECT,
    426                                                    BuiltInClass.FUNCTION));
     429    addStandardClass(Symbol.GENERIC_FUNCTION,
     430                     list(METAOBJECT, FUNCALLABLE_STANDARD_OBJECT));
    427431
    428432  public static final StandardClass METHOD_COMBINATION =
     
    582586    STANDARD_CLASS.setDirectSuperclass(CLASS);
    583587    STANDARD_OBJECT.setDirectSuperclass(BuiltInClass.CLASS_T);
     588    FUNCALLABLE_STANDARD_OBJECT.setDirectSuperclasses(list(STANDARD_OBJECT, BuiltInClass.FUNCTION));
    584589    GENERIC_FUNCTION.setDirectSuperclasses(list(METAOBJECT,
    585                                                 BuiltInClass.FUNCTION));
     590                                                FUNCALLABLE_STANDARD_OBJECT));
    586591
    587592    ARITHMETIC_ERROR.setCPL(ARITHMETIC_ERROR, ERROR, SERIOUS_CONDITION,
     
    647652    FORWARD_REFERENCED_CLASS.setCPL(FORWARD_REFERENCED_CLASS, CLASS,
    648653                                    SPECIALIZER, METAOBJECT, STANDARD_OBJECT, BuiltInClass.CLASS_T);
    649     GENERIC_FUNCTION.setCPL(GENERIC_FUNCTION, METAOBJECT, STANDARD_OBJECT,
     654    FUNCALLABLE_STANDARD_OBJECT.setCPL(FUNCALLABLE_STANDARD_OBJECT, STANDARD_OBJECT, BuiltInClass.FUNCTION, BuiltInClass.CLASS_T);
     655    GENERIC_FUNCTION.setCPL(GENERIC_FUNCTION, METAOBJECT,
     656                            FUNCALLABLE_STANDARD_OBJECT, STANDARD_OBJECT,
    650657                            BuiltInClass.FUNCTION,
    651658                            BuiltInClass.CLASS_T);
     
    766773    STANDARD_CLASS.finalizeClass();
    767774    STANDARD_OBJECT.finalizeClass();
     775    FUNCALLABLE_STANDARD_OBJECT.finalizeClass();
    768776    CLASS.finalizeClass();
     777    GENERIC_FUNCTION.finalizeClass();
    769778    ARITHMETIC_ERROR.finalizeClass();
    770779    CELL_ERROR.finalizeClass();
     
    856865    STANDARD_GENERIC_FUNCTION.setCPL(STANDARD_GENERIC_FUNCTION,
    857866                                     GENERIC_FUNCTION, METAOBJECT,
     867                                     FUNCALLABLE_STANDARD_OBJECT,
    858868                                     STANDARD_OBJECT,
    859869                                     BuiltInClass.FUNCTION,
  • trunk/abcl/src/org/armedbear/lisp/Symbol.java

    r13726 r13773  
    29722972  public static final Symbol EQL_SPECIALIZER_OBJECT =
    29732973    PACKAGE_MOP.addExternalSymbol("EQL-SPECIALIZER-OBJECT");
     2974  public static final Symbol FUNCALLABLE_STANDARD_OBJECT =
     2975    PACKAGE_MOP.addExternalSymbol("FUNCALLABLE-STANDARD-OBJECT");
    29742976  public static final Symbol SHORT_METHOD_COMBINATION =
    29752977    PACKAGE_MOP.addInternalSymbol("SHORT-METHOD-COMBINATION");
     
    30173019  public static final Symbol LONG_METHOD_COMBINATION_FORMS =
    30183020    PACKAGE_MOP.addInternalSymbol("LONG-METHOD-COMBINATION-FORMS");
     3021  // slot names of (long-|short-)method-combination classes
    30193022  public static final Symbol OPERATOR =
    30203023    PACKAGE_MOP.addInternalSymbol("OPERATOR");
Note: See TracChangeset for help on using the changeset viewer.