Changeset 14501


Ignore:
Timestamp:
05/15/13 08:06:06 (10 years ago)
Author:
rschlatte
Message:

Move generic-function definition into Lisp

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

Legend:

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

    r14499 r14501  
    461461                       list(STANDARD_OBJECT, BuiltInClass.FUNCTION));
    462462
    463   public static final StandardClass GENERIC_FUNCTION =
    464     addFuncallableStandardClass(Symbol.GENERIC_FUNCTION,
    465                                 list(METAOBJECT, FUNCALLABLE_STANDARD_OBJECT));
    466 
    467463  public static final StandardClass CLASS =
    468464    addStandardClass(Symbol.CLASS, list(SPECIALIZER));
     
    582578    STANDARD_OBJECT.setDirectSuperclass(BuiltInClass.CLASS_T);
    583579    FUNCALLABLE_STANDARD_OBJECT.setDirectSuperclasses(list(STANDARD_OBJECT, BuiltInClass.FUNCTION));
    584     GENERIC_FUNCTION.setDirectSuperclasses(list(METAOBJECT,
    585                                                 FUNCALLABLE_STANDARD_OBJECT));
    586 
    587580    ARITHMETIC_ERROR.setCPL(ARITHMETIC_ERROR, ERROR, SERIOUS_CONDITION,
    588581                            CONDITION, STANDARD_OBJECT, BuiltInClass.CLASS_T);
     
    640633                                       STANDARD_OBJECT, BuiltInClass.FUNCTION,
    641634                                       BuiltInClass.CLASS_T);
    642     GENERIC_FUNCTION.setCPL(GENERIC_FUNCTION, METAOBJECT,
    643                             FUNCALLABLE_STANDARD_OBJECT, STANDARD_OBJECT,
    644                             BuiltInClass.FUNCTION,
    645                             BuiltInClass.CLASS_T);
    646635    JAVA_EXCEPTION.setCPL(JAVA_EXCEPTION, ERROR, SERIOUS_CONDITION, CONDITION,
    647636                          STANDARD_OBJECT, BuiltInClass.CLASS_T);
     
    742731    FUNCALLABLE_STANDARD_OBJECT.finalizeClass();
    743732    FUNCALLABLE_STANDARD_CLASS.finalizeClass();
    744     GENERIC_FUNCTION.finalizeClass();
    745733    ARITHMETIC_ERROR.finalizeClass();
    746734    CELL_ERROR.finalizeClass();
  • trunk/abcl/src/org/armedbear/lisp/clos.lisp

    r14499 r14501  
    190190    (add-subclasses 'standard-object '(funcallable-standard-object metaobject))
    191191    (add-subclasses 'metaobject
    192                     '(generic-function method slot-definition specializer))
     192                    '(method slot-definition specializer))
    193193    (add-subclasses 'specializer '(class))
    194     (add-subclasses 'funcallable-standard-object 'generic-function)
    195194    (add-subclasses 'method 'standard-method)
    196195    (add-subclasses 'slot-definition
     
    996995(defconstant +the-forward-referenced-class+
    997996  (find-class 'forward-referenced-class))
     997
     998(define-funcallable-primordial-class generic-function
     999    (metaobject funcallable-standard-object)
     1000  ())
    9981001
    9991002(define-funcallable-primordial-class standard-generic-function (generic-function)
Note: See TracChangeset for help on using the changeset viewer.