[squeak-dev] The Trunk: Kernel-ul.1036.mcz

commits at source.squeak.org commits at source.squeak.org
Sat Aug 27 17:22:45 UTC 2016


Levente Uzonyi uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-ul.1036.mcz

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

Name: Kernel-ul.1036
Author: ul
Time: 27 August 2016, 7:13:45.745043 pm
UUID: e79df913-4b0c-4c66-8e84-58d823774d7e
Ancestors: Kernel-mt.1035

Use #new: to create a a DeepCopier with a given initial capacity.

=============== Diff against Kernel-mt.1035 ===============

Item was changed:
  ----- Method: Object>>veryDeepCopy (in category 'copying') -----
  veryDeepCopy
  	"Do a complete tree copy using a dictionary.  An object in the tree twice is only copied once.  All references to the object in the copy of the tree will point to the new copy."
  
  	| copier new |
+ 	copier := DeepCopier new: self initialDeepCopierSize.
- 	copier := DeepCopier new initialize: self initialDeepCopierSize.
  	new := self veryDeepCopyWith: copier.
  	copier mapUniClasses.
  	copier references associationsDo: [:assoc | 
  		assoc value veryDeepFixupWith: copier].
  	copier fixDependents.
  	^ new!

Item was changed:
  ----- Method: Object>>veryDeepCopySibling (in category 'copying') -----
  veryDeepCopySibling
  	"Do a complete tree copy using a dictionary.  Substitute a clone of oldPlayer for the root.  Normally, a Player or non systemDefined object would have a new class.  We do not want one this time.  An object in the tree twice, is only copied once.  All references to the object in the copy of the tree will point to the new copy."
  
  	| copier new |
+ 	copier := DeepCopier new: self initialDeepCopierSize.
- 	copier := DeepCopier new initialize: self initialDeepCopierSize.
  	copier newUniClasses: false.
  	new := self veryDeepCopyWith: copier.
  	copier mapUniClasses.
  	copier references associationsDo: [:assoc | 
  		assoc value veryDeepFixupWith: copier].
  	copier fixDependents.
  	^ new!



More information about the Squeak-dev mailing list