diff -r aa574220fff4 -r fa0017393e3b NameSpace.st --- a/NameSpace.st Sun Oct 27 15:14:36 1996 +0100 +++ b/NameSpace.st Sun Oct 27 15:33:55 1996 +0100 @@ -1,15 +1,79 @@ +" + COPYRIGHT (c) 1996 by Claus Gittinger + 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. +" + + Object subclass:#Namespace instanceVariableNames:'' classVariableNames:'' poolDictionaries:'' - category:'System-Support' + category:'Kernel-Classes' +! + +!Namespace class methodsFor:'documentation'! + +copyright +" + COPYRIGHT (c) 1996 by Claus Gittinger + 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 +" + A Namespace is actually a dummy class, providing a home + for its private classes. -!Namespace methodsFor:'enumeration'! + [author:] + Claus Gittinger + + [see also:] + Behavior ClassDescription Class Metaclass + PrivateMetaclass +" + +! ! + +!Namespace methodsFor:'accessing'! + +at:classNameSymbol + ^ self class privateClassesAt:classNameSymbol +! + +at:classNameSymbol ifAbsent:exceptionBlock + |cls| + + cls := self class privateClassesAt:classNameSymbol. + cls isNil ifTrue:[ + ^ exceptionBlock value + ]. + ^ cls +! + +at:classNameSymbol put:aClass + ^ self class privateClassesAt:classNameSymbol put:aClass +! ! + +!Namespace methodsFor:'enumerating'! allBehaviorsDo:aBlock - self privateClassesDo:aBlock + self class privateClassesDo:aBlock "Created: 26.10.1996 / 12:29:01 / cg" ! ! @@ -25,5 +89,5 @@ !Namespace class methodsFor:'documentation'! version - ^ '$Header: /cvs/stx/stx/libbasic/NameSpace.st,v 1.1 1996-10-26 13:21:31 cg Exp $' + ^ '$Header: /cvs/stx/stx/libbasic/NameSpace.st,v 1.2 1996-10-27 14:33:55 cg Exp $' ! !