The Trunk: Collections-ul.293.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: Collections-ul.293.mcz

commits-2
Levente Uzonyi uploaded a new version of Collections to project The Trunk:
http://source.squeak.org/trunk/Collections-ul.293.mcz

==================== Summary ====================

Name: Collections-ul.293
Author: ul
Time: 5 February 2010, 4:28:18.492 am
UUID: 98d428ae-f3f1-e74c-b305-0795d002ade2
Ancestors: Collections-ul.292

- weak collection changes, part 3

=============== Diff against Collections-ul.292 ===============

Item was changed:
  ----- Method: WeakKeyDictionary>>finalizeValues: (in category 'finalization') -----
  finalizeValues: finiObjects
  "Remove all associations with key == nil and value is in finiObjects.
  This method is folded with #rehash for efficiency."
 
  | oldArray |
+ self deprecated: 'The finalization logic changed, this method shouldn''t be called anymore.'.
  oldArray := array.
  array := Array new: oldArray size.
  tally := 0.
  1 to: array size do: [ :index |
  (oldArray at: index) ifNotNil: [ :association |
  association key ifNotNil: [ :key | "Don't let the key go away"
  (finiObjects includes: association value) ifFalse: [
  array
  at: (self scanForEmptySlotFor: key)
  put: association.
  tally := tally + 1 ] ] ] ]!

Item was changed:
+ (PackageInfo named: 'Collections') postscript: ''!
- (PackageInfo named: 'Collections') postscript: 'WeakRegistry allInstancesDo: #installFinalizer'!