r3518: *** empty log message ***
[hyperobject.git] / package.lisp
1 ;;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Base: 10 -*-
2 ;;;; *************************************************************************
3 ;;;; FILE IDENTIFICATION
4 ;;;;
5 ;;;; Name:          package.lisp
6 ;;;; Purpose:       Package definition for hyperobject package
7 ;;;; Programmer:    Kevin M. Rosenberg
8 ;;;; Date Started:  Apr 2000
9 ;;;;
10 ;;;; $Id: package.lisp,v 1.13 2002/11/29 05:05:29 kevin Exp $
11 ;;;;
12 ;;;; This file is Copyright (c) 2000-2002 by Kevin M. Rosenberg
13 ;;;; *************************************************************************
14
15 (declaim (optimize (debug 3) (speed 3) (safety 1) (compilation-speed 0)))
16
17 (in-package :cl-user)
18
19 (defpackage #:hyperobject
20   (:nicknames #:ho)
21   (:use #:common-lisp #:kmrcl)
22   (:export
23    #:package
24    #:hyperobject
25    #:hyperobject-class
26    #:hyperobject-class-title
27    #:load-all-subobjects
28    #:view
29    ))
30
31 (defpackage #:hyperobject-user
32   (:nicknames #:ho-user)
33   (:use #:hyperobject #:cl #:cl-user))
34
35 (eval-when (:compile-toplevel :load-toplevel :execute)
36   (shadowing-import
37    #+allegro
38    `(mop::class-slots mop::slot-definition-name mop:finalize-inheritance
39      mop::standard-direct-slot-definition mop::standard-effective-slot-definition
40      mop:direct-slot-definition-class mop:compute-effective-slot-definition
41      excl::compute-effective-slot-definition-initargs)
42    #+lispworks
43    `(clos:class-slots clos::slot-definition-name clos:finalize-inheritance
44      clos::standard-direct-slot-definition clos::standard-effective-slot-definition
45      clos:direct-slot-definition-class clos:compute-effective-slot-definition
46      clos::compute-effective-slot-definition-initargs)
47    #+sbcl 
48    `(sb-pcl:class-of sb-pcl:class-name sb-pcl:class-slots sb-pcl::standard-class
49      sb-pcl::slot-definition-name sb-pcl:finalize-inheritance
50      sb-pcl::standard-direct-slot-definition
51      sb-pcl::standard-effective-slot-definition sb-pcl::validate-superclass
52      sb-pcl:direct-slot-definition-class sb-pcl:compute-effective-slot-definition
53      sb-pcl::compute-effective-slot-definition-initargs)
54    #+cmu
55    `(pcl:class-of  pcl:class-name pcl:class-slots pcl::standard-class
56      pcl::slot-definition-name pcl:finalize-inheritance
57      pcl::standard-direct-slot-definition pcl::standard-effective-slot-definition
58      pcl::validate-superclass pcl:direct-slot-definition-class
59      pcl:compute-effective-slot-definition
60      pcl::compute-effective-slot-definition-initargs)
61    #+scl
62    `(class-of  class-name clos:class-slots clos::standard-class
63      clos::slot-definition-name clos:finalize-inheritance
64      clos::standard-direct-slot-definition clos::standard-effective-slot-definition
65      clos::validate-superclass clos:direct-slot-definition-class
66      clos:compute-effective-slot-definition
67      clos::compute-effective-slot-definition-initargs)
68    
69    :hyperobject))
70
71
72