[squeak-dev] The Trunk: Kernel-ul.815.mcz

commits at source.squeak.org commits at source.squeak.org
Fri Oct 25 22:40:38 UTC 2013


Levente Uzonyi uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-ul.815.mcz

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

Name: Kernel-ul.815
Author: ul
Time: 26 October 2013, 12:37:22.693 am
UUID: fed1469b-c755-4e2d-a37f-5dd00b5d08a3
Ancestors: Kernel-ul.812, Kernel-cmm.814

- merged Kernel-ul.812, Kernel-cmm.814
- removed MethodDictionary >> #includesKey:, because it's bogus

=============== Diff against Kernel-ul.812 ===============

Item was changed:
  ----- Method: BlockClosure>>fullPrintOn: (in category 'printing') -----
+ fullPrintOn: aStream 
+ 	aStream
+ 		 print: self ;
+ 		 cr.
+ 	self printSourceOn: aStream!
- fullPrintOn: aStream
- 	aStream print: self; cr.
- 	(self decompile ifNil: ['--source missing--']) printOn: aStream indent: 0!

Item was added:
+ ----- Method: BlockClosure>>printSourceOn: (in category 'printing') -----
+ printSourceOn: aStream 
+ 	self decompile
+ 		ifNil: [ aStream nextPutall: '--source missing--' ]
+ 		ifNotNil:
+ 			[ : parseNode | parseNode statements anyOne
+ 				printOn: aStream
+ 				indent: 0 ]!

Item was added:
+ ----- Method: BlockClosure>>sourceString (in category 'printing') -----
+ sourceString
+ 	^ String streamContents: [ : stream | self printSourceOn: stream ]!

Item was changed:
+ ----- Method: BlockClosure>>valueOtherwise: (in category 'evaluating') -----
- ----- Method: BlockClosure>>valueOtherwise: (in category 'events-support') -----
  valueOtherwise: aBlock
  	"Send the message and answer the return value"
  
  	^self value!

Item was added:
+ ----- Method: BlockClosure>>valueWithAllPossibleArguments: (in category 'evaluating') -----
+ valueWithAllPossibleArguments: anArray 
+ 	"Same as valueWithPossibleArgs: except when the receiver takes just one-argument, and more than one argument is specified by anArray, then pass all of anArray as THE argument to the receiver block
+ 	This is used to allow a large, variable number of arguments to be passed."
+ 	^numArgs = 0
+ 		ifTrue: [self value]
+ 		ifFalse:
+ 			[self valueWithArguments:
+ 				(numArgs = anArray size
+ 					ifTrue: [anArray]
+ 					ifFalse:
+ 						[numArgs > anArray size
+ 							ifTrue: [anArray, (Array new: numArgs - anArray size)]
+ 							ifFalse:
+ 								[numArgs = 1
+ 									ifTrue: [Array with: anArray]
+ 									ifFalse: [anArray copyFrom: 1 to: numArgs]]])]!

Item was changed:
+ ----- Method: BlockClosure>>valueWithArguments:otherwise: (in category 'evaluating') -----
- ----- Method: BlockClosure>>valueWithArguments:otherwise: (in category 'events-support') -----
  valueWithArguments: anArray otherwise: aBlock
  
  	^ self valueWithArguments: anArray!

Item was changed:
+ ----- Method: BlockClosure>>valueWithEnoughArguments: (in category 'evaluating') -----
- ----- Method: BlockClosure>>valueWithEnoughArguments: (in category 'events-support') -----
  valueWithEnoughArguments: anArray
  	"call me with enough arguments from anArray"
  	| args |
  	(anArray size == self numArgs)
  		ifTrue: [ ^self valueWithArguments: anArray ].
  
  	args := Array new: self numArgs.
  	args replaceFrom: 1
  		to: (anArray size min: args size)
  		with: anArray
  		startingAt: 1.
  
  	^ self valueWithArguments: args!

Item was added:
+ ----- Method: Error>>printVerboseOn: (in category 'printing') -----
+ printVerboseOn: aStream 
+ 	aStream
+ 		 setToEnd ;
+ 		 nextPutAll: 'vvvvvvvvvvvvvvvvvv ' , self description , ' vvvvvvvvvvvvvvvvvv' ;
+ 		 cr ;
+ 		 nextPutAll: 'The time is ', DateAndTime now asString ;
+ 		 cr.
+ 	"Allow applications to optionally print extra details without overriding a base package."
+ 	(self respondsTo: #printDetailsOn:) ifTrue: [ self printDetailsOn: aStream ].
+ 	aStream
+ 		 nextPutAll: self signalerContext longStack ;
+ 		 cr ;
+ 		 nextPutAll: '^^^^^^^^^^^^^^^^^^ ' , self description , ' ^^^^^^^^^^^^^^^^^^' ;
+ 		 cr!

Item was removed:
- ----- Method: MethodDictionary>>includesKey: (in category 'accessing') -----
- includesKey: aSymbol
- 	"This override assumes that instVarsInclude: uses a fast primitive"
- 
- 	aSymbol ifNil: [^ false].
- 	^ self instVarsInclude: aSymbol!



More information about the Squeak-dev mailing list