/* --- Copyright University of Sussex 1994. All rights reserved. ----------
 > File:            C.all/lisp/src/clos-exports.p
 > Purpose:         Export CLOS primitives to Lisp
 > Author:          John Williams, Apr 26 1994
 > Documentation:
 > Related Files:   C.all/lisp/src/clos.p, C.all/lisp/src/methods.p
 */

lisp_compile_mode;

section $-lisp;

lisp_export(add_method,             @SYS:ADD-METHOD,            [2 2 1]);
lisp_export(allocate_instance,      @SYS:ALLOCATE-INSTANCE,     [1 1 1]);
lisp_export(allocate_structure,     @SYS:ALLOCATE-STRUCTURE,    [2 2 1]);
lisp_export(call_iom,               @SYS:CALL-METHOD,           [2 2 ?]);
lisp_export(call_next_method,       @CALL-NEXT-METHOD,          [0 N ?]);
lisp_export(change_class,           @SYS:CHANGE-CLASS,          [2 2 1]);
lisp_export(class_name,             @SYS:POP11-CLASS-NAME,      [1 1 1]);
lisp_export(class_of,               @CLASS-OF,                  [1 1 1]);
lisp_export(compute_applicable_methods, @COMPUTE-APPLICABLE-METHODS, [2 2 1]);
lisp_export(default_print_object,   @SYS:DEFAULT-PRINT-OBJECT,  [2 2 1]);
lisp_export(define_class,           @SYS:DEFINE-CLASS,          [7 7 1]);
lisp_export(define_method,          @SYS:DEFINE-METHOD,         [6 6 1]);
lisp_export(ensure_generic_function, @SYS:ENSURE-GENERIC-FUNCTION, [6 6 1]);
lisp_export(find_class,             @FIND-CLASS,                [1 3 1]);
lisp_export(find_method,            @SYS:FIND-METHOD,           [4 4 1]);
lisp_export(gfn_clos_name,          @SYS:GFN-NAME,              "boolean");
lisp_export(i_class_instance,       @SYS:CLASS-OF-INSTANCE,     [1 1 1]);
lisp_export(make_instances_obsolete,@SYS:MAKE-INSTANCES-OBSOLETE, [1 1 0]);
lisp_export(method_qualifiers,      @SYS:METHOD-QUALIFIERS,     [1 1 1]);
lisp_export(newly_added_slots,      @SYS:NEWLY-ADDED-SLOTS,     [2 2 1]);
lisp_export(next_method_p,          @SYS:NEXT-METHOD-P,         "boolean");
lisp_export(remove_method,          @SYS:REMOVE-METHOD,         [2 2 1]);
lisp_export(shared_initialize,      @SYS:SHARED-INITIALIZE,     [3 3 1]);
lisp_export(slot_boundp,            @SLOT-BOUNDP,               "boolean");
lisp_export(slot_exists_p,          @SLOT-EXISTS-P,             "boolean");
lisp_export(slot_makunbound,        @SLOT-MAKUNBOUND,           [2 2 1]);
lisp_export(slot_value,             @SLOT-VALUE,                [2 2 1]);


endsection;
