[Pkg] The Treated Inbox: Collections-cmm.1022.mcz

commits at source.squeak.org commits at source.squeak.org
Sun Nov 20 22:20:38 UTC 2022


Chris Muller uploaded a new version of Collections to project The Treated Inbox:
http://source.squeak.org/treated/Collections-cmm.1022.mcz

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

Name: Collections-cmm.1022
Author: cmm
Time: 18 November 2022, 11:14:01.223447 pm
UUID: 9a05d251-4f02-43de-94e8-0f077ec51680
Ancestors: Collections-nice.1021

Allow empty fields when using #subStrings:.

=============== Diff against Collections-nice.1021 ===============

Item was changed:
  ----- Method: String>>subStrings: (in category 'converting') -----
  subStrings: separators 
  	"Answer an array containing the substrings in the receiver separated 
  	by the elements of separators."
  	| char result sourceStream subString |
- 	#Collectn.
- 	"Changed 2000/04/08 For ANSI <readableString> protocol."
  	(separators isString or:[separators allSatisfy: [:element | element isCharacter]]) ifFalse:
  		[^ self error: 'separators must be Characters.'].
  	sourceStream := ReadStream on: self.
  	result := OrderedCollection new.
  	subString := String new.
  	[sourceStream atEnd]
  		whileFalse: 
  			[char := sourceStream next.
  			(separators includes: char)
+ 				ifTrue: [result add: subString copy.
+ 							subString := String new]
- 				ifTrue: [subString notEmpty
- 						ifTrue: 
- 							[result add: subString copy.
- 							subString := String new]]
  				ifFalse: [subString := subString , (String with: char)]].
  	subString notEmpty ifTrue: [result add: subString copy].
  	^ result asArray!



More information about the Packages mailing list