equal
deleted
inserted
replaced
33 " |
33 " |
34 ! |
34 ! |
35 |
35 |
36 documentation |
36 documentation |
37 " |
37 " |
38 this is a special class to support keeping track of dependents without |
38 WeakIdentityDictionaries behave like IdentityDictionaries, |
|
39 as long as the contained objects are still referenced by some |
|
40 other (non-weak) object. |
|
41 However, once the last non-weak reference ceases to exist, |
|
42 the object will be automatically removed from the Weakcollection |
|
43 (with some delay: it will be removed after the next garbage collect). |
|
44 |
|
45 This class was added to support keeping track of dependents without |
39 keeping the values alive - values simply become nil when no one else |
46 keeping the values alive - values simply become nil when no one else |
40 references it. The original dependency mechanism used a regular Dictionary, |
47 references it. The original dependency mechanism used a regular Dictionary, |
41 which usually leads to a lot of garbage being kept due to a forgotten |
48 which usually leads to a lot of garbage being kept due to a forgotten |
42 release. Using a WeakDictionary may be incompatible to ST-80 but is much |
49 release. Using a WeakDictionary may be incompatible to ST-80 but is much |
43 more comfortable, since no manual release of dependents is needed. |
50 more comfortable, since no manual release of dependents is needed. |
|
51 |
|
52 [See also:] |
|
53 WeakArray WeakIdentitySet |
44 " |
54 " |
45 ! ! |
55 ! ! |
46 |
56 |
47 !WeakIdentityDictionary methodsFor:'adding & removing'! |
57 !WeakIdentityDictionary methodsFor:'adding & removing'! |
48 |
58 |
149 ! ! |
159 ! ! |
150 |
160 |
151 !WeakIdentityDictionary class methodsFor:'documentation'! |
161 !WeakIdentityDictionary class methodsFor:'documentation'! |
152 |
162 |
153 version |
163 version |
154 ^ '$Header: /cvs/stx/stx/libbasic/WeakIdentityDictionary.st,v 1.16 1996-04-22 15:40:37 cg Exp $' |
164 ^ '$Header: /cvs/stx/stx/libbasic/WeakIdentityDictionary.st,v 1.17 1996-04-23 11:56:31 cg Exp $' |
155 ! ! |
165 ! ! |