initial checkin
authorClaus Gittinger <cg@exept.de>
Mon, 30 Jul 2018 12:13:57 +0200
changeset 4698 8831b25d2a85
parent 4697 1ac02e269555
child 4699 7602ab8f4bc7
initial checkin
WeakOrderedCollection.st
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/WeakOrderedCollection.st	Mon Jul 30 12:13:57 2018 +0200
@@ -0,0 +1,67 @@
+"
+ COPYRIGHT (c) 2018 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.
+"
+"{ Package: 'stx:libbasic2' }"
+
+"{ NameSpace: Smalltalk }"
+
+OrderedCollection subclass:#WeakOrderedCollection
+	instanceVariableNames:''
+	classVariableNames:''
+	poolDictionaries:''
+	category:'Collections-Sequenceable'
+!
+
+!WeakOrderedCollection class methodsFor:'documentation'!
+
+copyright
+"
+ COPYRIGHT (c) 2018 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
+"
+    This is an OrderedCollection with weak references to its element.
+    Elements may vanish and are silently replaced by nil, if the
+    referred to element looses its last non-weak reference.
+    The logical size of the instance or the element slots are not
+    affected - thus, when an element is lost.
+    So be prepared to get nil when accessing/enumerating.
+"
+! !
+
+!WeakOrderedCollection methodsFor:'private'!
+
+containerClass
+    ^ WeakArray
+
+    "Created: / 30-07-2018 / 12:09:31 / Claus Gittinger"
+! !
+
+!WeakOrderedCollection class methodsFor:'documentation'!
+
+version
+    ^ '$Header$'
+!
+
+version_CVS
+    ^ '$Header$'
+! !
+