projects
/
sbcl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
0.8.0.78.vector-nil-string.6:
[sbcl.git]
/
src
/
pcl
/
defs.lisp
diff --git
a/src/pcl/defs.lisp
b/src/pcl/defs.lisp
index
515a222
..
2bdeb05
100644
(file)
--- a/
src/pcl/defs.lisp
+++ b/
src/pcl/defs.lisp
@@
-102,6
+102,7
@@
*the-class-generic-function*
*the-class-built-in-class*
*the-class-slot-class*
*the-class-generic-function*
*the-class-built-in-class*
*the-class-slot-class*
+ *the-class-condition-class*
*the-class-structure-class*
*the-class-std-class*
*the-class-standard-class*
*the-class-structure-class*
*the-class-std-class*
*the-class-standard-class*
@@
-447,6
+448,9
@@
(defclass slot-object (t) ()
(:metaclass slot-class))
(defclass slot-object (t) ()
(:metaclass slot-class))
+(defclass condition (slot-object instance) ()
+ (:metaclass condition-class))
+
(defclass structure-object (slot-object instance) ()
(:metaclass structure-class))
(defclass structure-object (slot-object instance) ()
(:metaclass structure-class))
@@
-516,7
+520,10
@@
:initform (cons nil nil))
(predicate-name
:initform nil
:initform (cons nil nil))
(predicate-name
:initform nil
- :reader class-predicate-name)))
+ :reader class-predicate-name)
+ (finalized-p
+ :initform nil
+ :reader class-finalized-p)))
(def!method make-load-form ((class class) &optional env)
;; FIXME: should we not instead pass ENV to FIND-CLASS? Probably
(def!method make-load-form ((class class) &optional env)
;; FIXME: should we not instead pass ENV to FIND-CLASS? Probably
@@
-552,10
+559,7
@@
:accessor class-direct-slots)
(slots
:initform ()
:accessor class-direct-slots)
(slots
:initform ()
- :accessor class-slots)
- (initialize-info
- :initform nil
- :accessor class-initialize-info)))
+ :accessor class-slots)))
;;; The class STD-CLASS is an implementation-specific common
;;; superclass of the classes STANDARD-CLASS and
;;; The class STD-CLASS is an implementation-specific common
;;; superclass of the classes STANDARD-CLASS and
@@
-573,7
+577,7
@@
(defclass built-in-class (pcl-class) ())
(defclass built-in-class (pcl-class) ())
-(defclass condition-class (pcl-class) ())
+(defclass condition-class (slot-class) ())
(defclass structure-class (slot-class)
((defstruct-form
(defclass structure-class (slot-class)
((defstruct-form
@@
-661,6
+665,16
@@
:initarg :allocation-class
:accessor slot-definition-allocation-class)))
:initarg :allocation-class
:accessor slot-definition-allocation-class)))
+(defclass condition-slot-definition (slot-definition)
+ ((allocation
+ :initform :instance
+ :initarg :allocation
+ :accessor slot-definition-allocation)
+ (allocation-class
+ :initform nil
+ :initarg :allocation-class
+ :accessor slot-definition-allocation-class)))
+
(defclass structure-slot-definition (slot-definition)
((defstruct-accessor-symbol
:initform nil
(defclass structure-slot-definition (slot-definition)
((defstruct-accessor-symbol
:initform nil
@@
-698,6
+712,14
@@
:initform nil
:accessor slot-definition-location)))
:initform nil
:accessor slot-definition-location)))
+(defclass condition-direct-slot-definition (condition-slot-definition
+ direct-slot-definition)
+ ())
+
+(defclass condition-effective-slot-definition (condition-slot-definition
+ effective-slot-definition)
+ ())
+
(defclass structure-direct-slot-definition (structure-slot-definition
direct-slot-definition)
())
(defclass structure-direct-slot-definition (structure-slot-definition
direct-slot-definition)
())
@@
-832,6
+854,7
@@
(std-class std-class-p)
(standard-class standard-class-p)
(funcallable-standard-class funcallable-standard-class-p)
(std-class std-class-p)
(standard-class standard-class-p)
(funcallable-standard-class funcallable-standard-class-p)
+ (condition-class condition-class-p)
(structure-class structure-class-p)
(forward-referenced-class forward-referenced-class-p)
(method method-p)
(structure-class structure-class-p)
(forward-referenced-class forward-referenced-class-p)
(method method-p)