changed #autoload.
Dependents on autoloaded classes will
now be dependent on the autoloaded class.
--- a/Autoload.st Wed Apr 09 10:31:03 2003 +0200
+++ b/Autoload.st Wed Apr 09 13:02:09 2003 +0200
@@ -413,7 +413,10 @@
oldMeta := self class.
"/ self setName:(self name , ' (auto)').
-
+ self dependents do:[:aDependent |
+ newClass addDependent:aDependent
+ ].
+ Smalltalk changed:#aboutToAutloadClass with:(self -> newClass).
self becomeSameAs:newClass.
oldMeta becomeSameAs:newClass class.
@@ -424,6 +427,7 @@
newClass postAutoload.
Smalltalk changed:#classDefinition with:newClass.
+ self changed:#loaded.
^ newClass
"Modified: / 5.3.1999 / 12:59:13 / cg"
@@ -473,10 +477,10 @@
|newClass|
self ~~ Autoload ifTrue:[
- newClass := self autoload.
- newClass notNil ifTrue:[
- ^ aMessage sendTo:newClass
- ]
+ newClass := self autoload.
+ newClass notNil ifTrue:[
+ ^ aMessage sendTo:newClass
+ ]
].
^ super doesNotUnderstand:aMessage
@@ -495,12 +499,12 @@
"take care: subclassing Autoload must still be possible"
(self == Autoload) ifTrue:[
- ^ self perform:sel inClass:Autoload class superclass withArguments:args
+ ^ self perform:sel inClass:Autoload class superclass withArguments:args
].
newClass := self autoload.
newClass notNil ifTrue:[
- ^ newClass perform:sel withArguments:args
+ ^ newClass perform:sel withArguments:args
].
^ nil
@@ -559,7 +563,7 @@
"catch respondsTo: - load the class and resend #respondsTo: it to the real one"
self == Autoload ifTrue:[
- ^ super respondsTo:aSelector
+ ^ super respondsTo:aSelector
].
^ self doesNotUnderstand:(Message selector:#respondsTo: with:aSelector)
@@ -574,10 +578,10 @@
|newClass|
self isBeingLoaded ifFalse:[
- newClass := self autoload.
- newClass notNil ifTrue:[
- ^ newClass accepts:aSignal
- ].
+ newClass := self autoload.
+ newClass notNil ifTrue:[
+ ^ newClass accepts:aSignal
+ ].
].
^ false
!
@@ -636,7 +640,7 @@
!Autoload class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic/Autoload.st,v 1.116 2003-03-02 20:39:52 stefan Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic/Autoload.st,v 1.117 2003-04-09 11:02:09 james Exp $'
! !
Autoload initialize!