"
COPYRIGHT (c) 1999 by eXept Software AG
All Rights Reserved
This software is furnished under a license and may be used
only in accordance with the terms of that license and with the
inclusion of the above copyright notice. This software may not
be provided or otherwise made available to, or used by, any
other person. No title to or ownership of the software is
hereby transferred.
"
Metaclass subclass:#AutoloadMetaclass
instanceVariableNames:''
classVariableNames:''
poolDictionaries:''
category:'Kernel-Classes'
!
!AutoloadMetaclass class methodsFor:'documentation'!
copyright
"
COPYRIGHT (c) 1999 by eXept Software AG
All Rights Reserved
This software is furnished under a license and may be used
only in accordance with the terms of that license and with the
inclusion of the above copyright notice. This software may not
be provided or otherwise made available to, or used by, any
other person. No title to or ownership of the software is
hereby transferred.
"
!
documentation
"
AutoloadMetaclass catches unhandled class methods, files in
the corresponding code when first used and resends the catched
message to the now existing class.
Autoload installs AutoloadMetaclass as its metaclass in #initialize.
[author:]
Stefan Vogel
[see also:]
Autoload
"
! !
!AutoloadMetaclass methodsFor:'message catching'!
doesNotUnderstand:aMessage
"caught a message; load the class and retry the message"
|newClass|
self ~~ AutoloadMetaclass ifTrue:[
newClass := myClass autoload.
newClass notNil ifTrue:[
^ aMessage sendTo:newClass class
]
].
^ super doesNotUnderstand:aMessage
"
Autoload xxx
VisualPart unload.
VisualPart xxx
VisualPart unload.
VisualPart defaultFont
"
"Modified: / 3.8.1999 / 13:57:05 / stefan"
! !
!AutoloadMetaclass class methodsFor:'documentation'!
version
^ '$Header: /cvs/stx/stx/libbasic/AutoloadMetaclass.st,v 1.3 2000-02-18 14:30:29 cg Exp $'
! !