[squeak-dev] The Trunk: ShoutCore-eem.22.mcz

commits at source.squeak.org commits at source.squeak.org
Mon Oct 11 18:37:42 UTC 2010


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

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

Name: ShoutCore-eem.22
Author: eem
Time: 11 October 2010, 11:37:36.994 am
UUID: bf5e644e-451b-4117-bb1a-8d3a087f902d
Ancestors: ShoutCore-eem.16, ShoutCore-nice.21

Merge with ShoutCore-nice.21.
Now that we now that $- is (almost) a normal binary selector character (it also occurs in Number literals), let's do more simplifications.

Laza's isNil ifTrue:... => ifNil: tweaks.

=============== Diff against ShoutCore-nice.21 ===============

Item was changed:
  ----- Method: SHParserST80>>parseExternalCall (in category 'parse') -----
  parseExternalCall
+ 	[self scanNext.
+ 	((Smalltalk at: #ExternalFunction) callingConventionModifierFor: currentToken) notNil]
+ 		whileTrue.
- 	self scanNext.
  	self scanPast: #externalCallType.
  	currentToken = '*' 
  		ifTrue: [self scanPast: #externalCallTypePointerIndicator].
  	currentTokenFirst isDigit 
  		ifTrue: [self scanPast: #integer]
  		ifFalse: 	[
  			self failUnless: currentTokenFirst == $'.
  			self parseString].
  	self failUnless: currentTokenFirst == $(.
  	self scanPast: #leftParenthesis.
+ 	[currentTokenFirst ~= $)] 
- 	[currentTokenFirst ~~ $)] 
  		whileTrue: [
  			self scanPast: #externalCallType.
  			currentToken = '*' 
  				ifTrue: [self scanPast: #externalCallTypePointerIndicator]].
  	self scanPast: #rightParenthesis.
  	currentToken = 'module:' 
  		ifTrue: [
  			self scanPast: #module.
  			self failUnless: currentTokenFirst == $'.
  			self parseString].
+ 	currentToken = 'error:' 
+ 		ifTrue: [
+ 			self scanPast: #module.
+ 			currentTokenFirst == $'
+ 				ifTrue: [self parseString]
+ 				ifFalse: [self scanPast: #patternTempVar]].
  	self failUnless: currentToken = '>'.
  	self scanPast: #primitiveOrExternalCallEnd!

Item was changed:
  ----- Method: SHParserST80>>parsePrimitive (in category 'parse') -----
  parsePrimitive
+ 	| numericPrim yetToSeeErrorCode |
+ 	yetToSeeErrorCode := true.
  	self scanNext.
+ 	(numericPrim := currentTokenFirst isDigit)
- 	currentTokenFirst isDigit 
  		ifTrue: [self scanPast: #integer]
  		ifFalse: [
+ 			self failUnless: currentTokenFirst == $'.
+ 			self parseString].
+ 	currentToken = 'error:' ifTrue:
+ 		[yetToSeeErrorCode := false.
+ 		 self scanPast: #primitive.
+ 		 self isName
+ 			ifTrue: [self scanPast: #patternTempVar]
+ 			ifFalse:
+ 				[self failUnless: currentTokenFirst == $'.
+ 				 self parseString]].
+ 	numericPrim ifFalse:
+ 		[currentToken = 'module:' ifTrue:
+ 			[self scanPast: #module.
+ 			 self failUnless: currentTokenFirst == $'.
+ 			 self parseString]].
+ 	(yetToSeeErrorCode
+ 	 and: [currentToken = 'error:']) ifTrue:
+ 		[self scanPast: #primitive.
+ 		 self isName
+ 			ifTrue: [self scanPast: #patternTempVar]
+ 			ifFalse:
+ 				[self failUnless: currentTokenFirst == $'.
+ 				 self parseString]].
+ 	self failUnless: currentToken = '>'.
- 			currentTokenFirst == $'
- 				ifTrue: [ self parseString ]
- 				ifFalse: [
- 					currentTokenFirst == $#
- 						ifTrue: [ self parseSymbol ]
- 						ifFalse: [ self error ] ].
- 			currentToken = 'module:' 
- 				ifTrue: [
- 					self scanPast: #module.
- 					currentTokenFirst == $'
- 						ifTrue: [ self parseString ]
- 						ifFalse: [
- 							currentTokenFirst == $#
- 								ifTrue: [ self parseSymbol ]
- 								ifFalse: [ self error ] ] ] ].
- 	self failUnless: currentTokenFirst == $>.
  	self scanPast: #primitiveOrExternalCallEnd!




More information about the Squeak-dev mailing list