[squeak-dev] The Trunk: ShoutCore-nice.5.mcz

commits at source.squeak.org commits at source.squeak.org
Mon Nov 30 10:42:04 UTC 2009


Nicolas Cellier uploaded a new version of ShoutCore to project The Trunk:
http://source.squeak.org/trunk/ShoutCore-nice.5.mcz

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

Name: ShoutCore-nice.5
Author: nice
Time: 30 November 2009, 11:42:19 am
UUID: 21b868bc-bc05-8b4f-b0d5-6571aa05242e
Ancestors: ShoutCore-rss.4

Make Shout literal ByteArray aware #[1 2 3]

=============== Diff against ShoutCore-rss.4 ===============

Item was added:
+ ----- Method: SHParserST80>>parseByteArray (in category 'parse') -----
+ parseByteArray
+ 	[currentTokenFirst == $]] whileFalse: [
+ 		currentTokenFirst isDigit 
+ 			ifTrue: [
+ 				"do not parse the number, can be time consuming"
+ 				self scanPast: #number]
+ 			ifFalse: [
+ 				self failWhen: currentTokenFirst == $. .
+ 				self error]].
+ 	self scanPast: #arrayEnd!

Item was changed:
  ----- Method: SHParserST80>>parseSymbol (in category 'parse') -----
  parseSymbol
  	| c |
  	currentToken = '#' 
  		ifTrue: [
  			"if token is just the #, then scan whitespace and comments
  			and then process the next character.
  			Squeak allows space between the # and the start of the symbol 
  			e.g. # (),  #  a, #  'sym' "
  			self rangeType: #symbol.
  			self scanWhitespace].
  	c := self currentChar.
  	self failWhen: (c isNil or: [c isSeparator]).
  	c == $( 
  		ifTrue: [
  			self nextChar.
  			self scanPast: #arrayStart start: currentTokenSourcePosition end: currentTokenSourcePosition + 1.
  			^self parseArray].
  	c == $' ifTrue: [^self parseSymbolString].
+ 	c == $[ ifTrue: [
+ 			self nextChar.
+ 			self scanPast: #arrayStart start: currentTokenSourcePosition end: currentTokenSourcePosition + 1.
+ 			^self parseByteArray].
  	((self isSelectorCharacter: c) or: [c == $-]) 
  		ifTrue: [^self parseSymbolSelector].
  	(c isLetter or: [c == $:]) ifTrue: [^self parseSymbolIdentifier].
  	^self parseCharSymbol!




More information about the Squeak-dev mailing list