[squeak-dev] The Trunk: Collections-eem.464.mcz

commits at source.squeak.org commits at source.squeak.org
Wed Nov 2 20:09:04 UTC 2011


Eliot Miranda uploaded a new version of Collections to project The Trunk:
http://source.squeak.org/trunk/Collections-eem.464.mcz

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

Name: Collections-eem.464
Author: eem
Time: 2 November 2011, 1:08:39.649 pm
UUID: 0984ea11-ef0f-40e0-9de1-aea54055ef85
Ancestors: Collections-ul.463

Second part of changes to restore protection against infinite
recursion on printing circular array literals.  Add a visited set
to Array>shouldBePrintedAsLiteral => shouldBePrintedAsLiteralVisiting:.

=============== Diff against Collections-ul.463 ===============

Item was changed:
  ----- Method: Array>>shouldBePrintedAsLiteral (in category 'testing') -----
  shouldBePrintedAsLiteral
  
+ 	^self class == Array
+ 	  and: [self shouldBePrintedAsLiteralVisiting: (IdentitySet new: 8)]!
- 	^self class == Array and: [ self allSatisfy: [ :each | each shouldBePrintedAsLiteral ] ]!

Item was added:
+ ----- Method: Array>>shouldBePrintedAsLiteralVisiting: (in category 'testing') -----
+ shouldBePrintedAsLiteralVisiting: aSet
+ 	self class == Array ifFalse:
+ 		[^false].
+ 	(aSet includes: self) ifTrue:
+ 		[^false].
+ 	aSet add: self.
+ 	^self allSatisfy: [:each | each shouldBePrintedAsLiteralVisiting: aSet]!

Item was added:
+ ----- Method: Character>>shouldBePrintedAsLiteralVisiting: (in category 'testing') -----
+ shouldBePrintedAsLiteralVisiting: aSet
+ 
+ 	^self shouldBePrintedAsLiteral!




More information about the Squeak-dev mailing list