[Vm-dev] VM Maker: VMMaker.oscog-eem.1591.mcz
commits at source.squeak.org
commits at source.squeak.org
Sun Dec 13 20:35:34 UTC 2015
Eliot Miranda uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker.oscog-eem.1591.mcz
==================== Summary ====================
Name: VMMaker.oscog-eem.1591
Author: eem
Time: 13 December 2015, 12:33:42.67 pm
UUID: 27b9f438-09bc-4421-a07d-f70f493df338
Ancestors: VMMaker.oscog-eem.1590
Slang: move stream:endsWithAnyOf: up for TSwitchStmtNode
=============== Diff against VMMaker.oscog-eem.1590 ===============
Item was added:
+ ----- Method: TParseNode>>stream:endsWithAnyOf: (in category 'testing') -----
+ stream: aStream endsWithAnyOf: characters
+ "Answer if the given stream ends in any of the characters, ignoring whitespace."
+ | pos ch popped |
+ pos := aStream position.
+ aStream class = WriteStream ifTrue: "i.e. nested in StreamContents"
+ [[pos > 0] whileTrue:
+ [ch := aStream originalContents at: pos.
+ ch isSeparator ifFalse:
+ [^characters includes: ch].
+ pos := pos - 1].
+ ^false].
+
+ popped := OrderedCollection new.
+ [pos > 0] whileTrue:
+ [ch := popped addFirst: (aStream position: pos - 1; peek).
+ ch isSeparator ifFalse:
+ [popped notEmpty ifTrue: "it almost always is"
+ ["*don't* use nextPutAll: to work around a bug in UTF8TextConverter
+ >>nextPut:toStream: which avoids line-end conversion; sigh."
+ popped do:
+ [:c| aStream nextPut: c]].
+ ^characters includes: ch].
+ pos := pos - 1].
+ "*don't* use nextPutAll: to work around a bug in UTF8TextConverter>>
+ nextPut:toStream: which avoids line-end conversion; sigh."
+ popped do:
+ [:c| aStream nextPut: c].
+ ^false!
Item was removed:
- ----- Method: TStmtListNode>>stream:endsWithAnyOf: (in category 'testing') -----
- stream: aStream endsWithAnyOf: characters
- "Answer if the given stream ends in any of the characters, ignoring whitespace."
- | pos ch popped |
- pos := aStream position.
- aStream class = WriteStream ifTrue: "i.e. nested in StreamContents"
- [[pos > 0] whileTrue:
- [ch := aStream originalContents at: pos.
- ch isSeparator ifFalse:
- [^characters includes: ch].
- pos := pos - 1].
- ^false].
-
- popped := OrderedCollection new.
- [pos > 0] whileTrue:
- [ch := popped addFirst: (aStream position: pos - 1; peek).
- ch isSeparator ifFalse:
- [popped notEmpty ifTrue: "it almost always is"
- ["*don't* use nextPutAll: to work around a bug in UTF8TextConverter
- >>nextPut:toStream: which avoids line-end conversion; sigh."
- popped do:
- [:c| aStream nextPut: c]].
- ^characters includes: ch].
- pos := pos - 1].
- "*don't* use nextPutAll: to work around a bug in UTF8TextConverter>>
- nextPut:toStream: which avoids line-end conversion; sigh."
- popped do:
- [:c| aStream nextPut: c].
- ^false!
More information about the Vm-dev
mailing list