WeakDependencyDictionary.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Fri, 24 Jul 2015 08:06:37 +0100
branchjv
changeset 18630 a74d669db937
parent 18011 deb0c3355881
parent 18620 b4e9f25d6ce6
child 20079 8d884971c2ed
permissions -rw-r--r--
Merge
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2093
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
 COPYRIGHT (c) 1997 by Claus Gittinger
18620
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
     3
	      All Rights Reserved
2093
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
 This software is furnished under a license and may be used
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
 hereby transferred.
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
"
8031
38f7b57a3f77 print removed
Claus Gittinger <cg@exept.de>
parents: 4350
diff changeset
    12
"{ Package: 'stx:libbasic' }"
38f7b57a3f77 print removed
Claus Gittinger <cg@exept.de>
parents: 4350
diff changeset
    13
2093
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
WeakIdentityDictionary subclass:#WeakDependencyDictionary
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
	instanceVariableNames:''
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
	classVariableNames:''
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
	poolDictionaries:''
4350
5aa2a3b9fd5b category change
Claus Gittinger <cg@exept.de>
parents: 2512
diff changeset
    18
	category:'Collections-Weak'
2093
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
!
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
!WeakDependencyDictionary class methodsFor:'documentation'!
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
copyright
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
"
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
 COPYRIGHT (c) 1997 by Claus Gittinger
18620
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
    26
	      All Rights Reserved
2093
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
 This software is furnished under a license and may be used
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
 only in accordance with the terms of that license and with the
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
 inclusion of the above copyright notice.   This software may not
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
 be provided or otherwise made available to, or used by, any
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
 other person.  No title to or ownership of the software is
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
 hereby transferred.
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
"
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
!
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
documentation
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
"
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
    A specialized WeakIdentityDictionary, which 'knowns' how
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
    to get rid of obsolete entries. This is only used with the
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
    dependency mechanism.
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
    [author:]
18620
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
    45
	Claus Gittinger
2093
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
    [See also:]
18620
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
    48
	WeakArray WeakIdentityDictionary WeakValueDictionary WeakIdentitySet
2093
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
"
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
! !
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
2297
118f794c4e42 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
    52
!WeakDependencyDictionary methodsFor:'private'!
118f794c4e42 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
    53
118f794c4e42 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
    54
keyContainerOfSize:n
118f794c4e42 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
    55
    "return a container for keys of size n.
118f794c4e42 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
    56
     use WeakArrays here."
118f794c4e42 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
    57
14305
a5626a16240d changed: #keyContainerOfSize:
Claus Gittinger <cg@exept.de>
parents: 13746
diff changeset
    58
    ^ WeakArray new:n.
2297
118f794c4e42 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
    59
14305
a5626a16240d changed: #keyContainerOfSize:
Claus Gittinger <cg@exept.de>
parents: 13746
diff changeset
    60
    "Modified: / 07-01-1997 / 17:01:15 / stefan"
a5626a16240d changed: #keyContainerOfSize:
Claus Gittinger <cg@exept.de>
parents: 13746
diff changeset
    61
    "Modified: / 04-08-2012 / 14:55:53 / cg"
2297
118f794c4e42 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
    62
! !
118f794c4e42 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
    63
2093
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
!WeakDependencyDictionary methodsFor:'special dependency support'!
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
removeEmptyDependencyValues
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
    "special entry for dependency management:
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
     remove any empty (due to finalization) value WeakArray elements."
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
2512
a57c66f472b3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2508
diff changeset
    70
    |index t wasBlocked deps o key originalKeyArray|
2093
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
    "/ careful: this is sent by the finalizer at low prio.
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
    "/ be prepared for the receiver to change while we walk over
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
    "/ the value array here ...
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
2297
118f794c4e42 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
    76
"/ 'removeEmptyDependencyValues ...' printCR.
118f794c4e42 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
    77
2316
6b24c092456a mhmh - be very careful when removing empty slots.
Claus Gittinger <cg@exept.de>
parents: 2300
diff changeset
    78
    originalKeyArray := keyArray.
6b24c092456a mhmh - be very careful when removing empty slots.
Claus Gittinger <cg@exept.de>
parents: 2300
diff changeset
    79
2093
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    80
    index := 1.
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    81
    [index <= keyArray size] whileTrue:[
18620
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
    82
	"/ get the size again - it could have changed
2093
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
18620
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
    84
	wasBlocked := OperatingSystem blockInterrupts.
2297
118f794c4e42 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
    85
18620
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
    86
	keyArray ~~ originalKeyArray ifTrue:[
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
    87
	    index := 1. "/ start over
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
    88
	    "/ 'restart removeEmpty' infoPrintCR.
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
    89
	    originalKeyArray := keyArray.
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
    90
	].
2316
6b24c092456a mhmh - be very careful when removing empty slots.
Claus Gittinger <cg@exept.de>
parents: 2300
diff changeset
    91
18620
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
    92
	index <= keyArray size ifTrue:[
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
    93
	    key := keyArray basicAt:index.
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
    94
	    key class == SmallInteger ifTrue:[
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
    95
		"/ that one is gone
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
    96
		key := DeletedEntry.
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
    97
		keyArray basicAt:index put:key.
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
    98
		valueArray basicAt:index put:nil.
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
    99
		tally := tally - 1.
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   100
	    ].
2297
118f794c4e42 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
   101
18620
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   102
	    (key notNil and:[key ~~ DeletedEntry]) ifTrue:[
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   103
		deps := valueArray basicAt:index.
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   104
		deps notNil ifTrue:[
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   105
		    "/ is it an empty WeakArray ?
2093
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   106
18620
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   107
		    (deps isMemberOf:WeakArray) ifTrue:[
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   108
			t := deps findFirst:[:el | el notNil and:[el ~~ 0]].
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   109
			t == 0 ifTrue:[
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   110
			    "/ yes - nil it
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   111
			    valueArray basicAt:index put:nil.
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   112
			    keyArray basicAt:index put:DeletedEntry.
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   113
			    tally := tally - 1.
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   114
			]
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   115
		    ] ifFalse:[
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   116
		       "/ is it an empty WeakIdSet ?
2316
6b24c092456a mhmh - be very careful when removing empty slots.
Claus Gittinger <cg@exept.de>
parents: 2300
diff changeset
   117
18620
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   118
		       (deps isMemberOf:WeakIdentitySet) ifTrue:[
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   119
			    (t := deps size) == 0 ifTrue:[
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   120
				"/ yes - nil it
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   121
				valueArray basicAt:index put:nil.
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   122
				keyArray basicAt:index put:DeletedEntry.
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   123
				tally := tally - 1.
2316
6b24c092456a mhmh - be very careful when removing empty slots.
Claus Gittinger <cg@exept.de>
parents: 2300
diff changeset
   124
"/                            ] ifFalse:[
6b24c092456a mhmh - be very careful when removing empty slots.
Claus Gittinger <cg@exept.de>
parents: 2300
diff changeset
   125
"/                                t == 1 ifTrue:[
6b24c092456a mhmh - be very careful when removing empty slots.
Claus Gittinger <cg@exept.de>
parents: 2300
diff changeset
   126
"/                                    "/ careful - it could actually be empty
6b24c092456a mhmh - be very careful when removing empty slots.
Claus Gittinger <cg@exept.de>
parents: 2300
diff changeset
   127
"/                                    o := deps firstIfEmpty:nil.
6b24c092456a mhmh - be very careful when removing empty slots.
Claus Gittinger <cg@exept.de>
parents: 2300
diff changeset
   128
"/                                    o notNil ifTrue:[
6b24c092456a mhmh - be very careful when removing empty slots.
Claus Gittinger <cg@exept.de>
parents: 2300
diff changeset
   129
"/                                        "/ the set lost an object, and shrunk to size 1
6b24c092456a mhmh - be very careful when removing empty slots.
Claus Gittinger <cg@exept.de>
parents: 2300
diff changeset
   130
"/                                        "/ can now use a WeakArray
6b24c092456a mhmh - be very careful when removing empty slots.
Claus Gittinger <cg@exept.de>
parents: 2300
diff changeset
   131
"/                                        valueArray basicAt:index put:(WeakArray with:o)
6b24c092456a mhmh - be very careful when removing empty slots.
Claus Gittinger <cg@exept.de>
parents: 2300
diff changeset
   132
"/                                    ] ifFalse:[
6b24c092456a mhmh - be very careful when removing empty slots.
Claus Gittinger <cg@exept.de>
parents: 2300
diff changeset
   133
"/                                        key notNil ifTrue:[
2512
a57c66f472b3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2508
diff changeset
   134
"/                                            keyArray basicAt:index put:DeletedEntry.
2316
6b24c092456a mhmh - be very careful when removing empty slots.
Claus Gittinger <cg@exept.de>
parents: 2300
diff changeset
   135
"/                                            tally := tally - 1.
6b24c092456a mhmh - be very careful when removing empty slots.
Claus Gittinger <cg@exept.de>
parents: 2300
diff changeset
   136
"/                                        ]
6b24c092456a mhmh - be very careful when removing empty slots.
Claus Gittinger <cg@exept.de>
parents: 2300
diff changeset
   137
"/                                    ]
6b24c092456a mhmh - be very careful when removing empty slots.
Claus Gittinger <cg@exept.de>
parents: 2300
diff changeset
   138
"/                                ]
18620
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   139
			    ]
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   140
			]
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   141
		    ]
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   142
		] ifFalse:[
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   143
		    "/ 'oops: nil value for key' infoPrint. key infoPrintCR.
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   144
		    keyArray basicAt:index put:DeletedEntry.
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   145
		    tally := tally - 1.
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   146
		]
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   147
	    ]
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   148
	].
2093
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   149
18620
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   150
	wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   151
	index := index + 1.
2093
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   152
    ].
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   153
2297
118f794c4e42 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
   154
"/ 'done' printCR.
2093
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   155
    "
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   156
     Dependencies removeEmptyDependencyValues
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   157
    "
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   158
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   159
    "Created: 9.1.1997 / 00:00:28 / cg"
2512
a57c66f472b3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2508
diff changeset
   160
    "Modified: 27.3.1997 / 15:55:12 / cg"
2299
fc326c7457b4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2297
diff changeset
   161
! !
fc326c7457b4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2297
diff changeset
   162
2093
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   163
!WeakDependencyDictionary class methodsFor:'documentation'!
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   164
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   165
version
18620
b4e9f25d6ce6 preparations for lined index list in WeakArray
Claus Gittinger <cg@exept.de>
parents: 14305
diff changeset
   166
    ^ '$Header$'
2093
3a849047dc90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   167
! !