[squeak-dev] The Trunk: Kernel-fbs.772.mcz

commits at source.squeak.org commits at source.squeak.org
Sat Jun 29 21:14:06 UTC 2013


Frank Shearar uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-fbs.772.mcz

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

Name: Kernel-fbs.772
Author: fbs
Time: 29 June 2013, 10:13:17.979 pm
UUID: 7366bd8f-bc8c-754d-a817-291d33689207
Ancestors: Kernel-nice.771

Move things to do with object events to the System-Object Events subpackage.

=============== Diff against Kernel-nice.771 ===============

Item was changed:
  SystemOrganization addCategory: #'Kernel-Chronology'!
  SystemOrganization addCategory: #'Kernel-Classes'!
  SystemOrganization addCategory: #'Kernel-Exceptions'!
  SystemOrganization addCategory: #'Kernel-Exceptions-Kernel'!
  SystemOrganization addCategory: #'Kernel-Methods'!
  SystemOrganization addCategory: #'Kernel-Models'!
  SystemOrganization addCategory: #'Kernel-Numbers'!
  SystemOrganization addCategory: #'Kernel-Numbers-Exceptions'!
  SystemOrganization addCategory: #'Kernel-Objects'!
  SystemOrganization addCategory: #'Kernel-Processes'!
  SystemOrganization addCategory: #'Kernel-Processes-Variables'!
+ SystemOrganization addCategory: #'Kernel-Methods-Proxies'!

Item was removed:
- ----- Method: CompiledMethod>>hasBreakpoint (in category 'debugger support') -----
- hasBreakpoint
- 	^BreakpointManager methodHasBreakpoint: self!

Item was removed:
- ----- Method: Object>>actionForEvent: (in category 'events-accessing') -----
- actionForEvent: anEventSelector
-     "Answer the action to be evaluated when <anEventSelector> has been triggered."
- 
- 	^self actionMap
- 		at: anEventSelector asSymbol
- 		ifAbsent: [nil]!

Item was removed:
- ----- Method: Object>>actionForEvent:ifAbsent: (in category 'events-accessing') -----
- actionForEvent: anEventSelector
- ifAbsent: anExceptionBlock
-     "Answer the action to be evaluated when <anEventSelector> has been triggered."
- 
- 	| actions |
- 	actions := self actionMap
- 		at: anEventSelector asSymbol
- 		ifAbsent: [nil].
- 	^actions ifNil: [anExceptionBlock value]!

Item was removed:
- ----- Method: Object>>actionMap (in category 'events-accessing') -----
- actionMap
- 
- 	^EventManager actionMapFor: self!

Item was removed:
- ----- Method: Object>>actionSequenceForEvent: (in category 'events-accessing') -----
- actionSequenceForEvent: anEventSelector
- 
-     ^(self actionMap
-         at: anEventSelector asSymbol
-         ifAbsent: [^WeakActionSequence new])
-             asActionSequence!

Item was removed:
- ----- Method: Object>>actionsDo: (in category 'events-accessing') -----
- actionsDo: aBlock
- 
- 	self actionMap do: aBlock!

Item was removed:
- ----- Method: Object>>actionsWithReceiver:forEvent: (in category 'events') -----
- actionsWithReceiver: anObject forEvent: anEventSelector
- 
- 	^(self actionSequenceForEvent: anEventSelector)
-                 select: [:anAction | anAction receiver == anObject ]!

Item was removed:
- ----- Method: Object>>asActionSequence (in category 'converting') -----
- asActionSequence
- 
- 	^WeakActionSequence with: self!

Item was removed:
- ----- Method: Object>>asActionSequenceTrappingErrors (in category 'converting') -----
- asActionSequenceTrappingErrors
- 
- 	^WeakActionSequenceTrappingErrors with: self!

Item was removed:
- ----- Method: Object>>break (in category 'breakpoint') -----
- break
- 	"This is a simple message to use for inserting breakpoints during debugging.
- 	The debugger is opened by sending a signal. This gives a chance to restore
- 	invariants related to multiple processes."
- 
- 	BreakPoint signal.
- 
- 	"nil break."!

Item was removed:
- ----- Method: Object>>createActionMap (in category 'events-accessing') -----
- createActionMap
- 
- 	^IdentityDictionary new!

Item was removed:
- ----- Method: Object>>hasActionForEvent: (in category 'events-accessing') -----
- hasActionForEvent: anEventSelector
-     "Answer true if there is an action associated with anEventSelector"
- 
-     ^(self actionForEvent: anEventSelector) notNil!

Item was removed:
- ----- Method: Object>>releaseActionMap (in category 'events-removing') -----
- releaseActionMap
- 
- 	EventManager releaseActionMapFor: self!

Item was removed:
- ----- Method: Object>>removeAction:forEvent: (in category 'events-removing') -----
- removeAction: anAction
- forEvent: anEventSelector
- 
-     self
-         removeActionsSatisfying: [:action | action = anAction]
-         forEvent: anEventSelector!

Item was removed:
- ----- Method: Object>>removeActionsForEvent: (in category 'events-removing') -----
- removeActionsForEvent: anEventSelector
- 
-     | map |
-     map := self actionMap.
-     map removeKey: anEventSelector asSymbol ifAbsent: [].
-     map isEmpty
-         ifTrue: [self releaseActionMap]!

Item was removed:
- ----- Method: Object>>removeActionsSatisfying: (in category 'events-removing') -----
- removeActionsSatisfying: aBlock
- 
- 	self actionMap keys do:
- 		[:eachEventSelector |
- 			self
-    				removeActionsSatisfying: aBlock
- 				forEvent: eachEventSelector
- 		]!

Item was removed:
- ----- Method: Object>>removeActionsSatisfying:forEvent: (in category 'events-removing') -----
- removeActionsSatisfying: aOneArgBlock 
- forEvent: anEventSelector
- 
-     self
-         setActionSequence:
-             ((self actionSequenceForEvent: anEventSelector)
-                 reject: aOneArgBlock)
-         forEvent: anEventSelector!

Item was removed:
- ----- Method: Object>>removeActionsWithReceiver: (in category 'events-removing') -----
- removeActionsWithReceiver: anObject
- 
- 	self actionMap copy keysDo:
- 		[:eachEventSelector |
- 			self
-    				removeActionsSatisfying: [:anAction | anAction receiver == anObject]
- 				forEvent: eachEventSelector
- 		]!

Item was removed:
- ----- Method: Object>>removeActionsWithReceiver:forEvent: (in category 'events-removing') -----
- removeActionsWithReceiver: anObject
- forEvent: anEventSelector
- 
-     self
-         removeActionsSatisfying:
-             [:anAction |
-             anAction receiver == anObject]
-         forEvent: anEventSelector!

Item was removed:
- ----- Method: Object>>renameActionsWithReceiver:forEvent:toEvent: (in category 'events') -----
- renameActionsWithReceiver: anObject forEvent: anEventSelector toEvent: newEvent
- 
- 	| oldActions newActions |
- 	oldActions := Set new.
- 	newActions := Set new.
- 	(self actionSequenceForEvent: anEventSelector) do: [ :action |
- 		action receiver == anObject
- 			ifTrue: [ oldActions add: anObject ]
- 			ifFalse: [ newActions add: anObject ]].
- 	self setActionSequence: (ActionSequence withAll: newActions) forEvent: anEventSelector.
- 	oldActions do: [ :act | self when: newEvent evaluate: act ].!

Item was removed:
- ----- Method: Object>>setActionSequence:forEvent: (in category 'events-accessing') -----
- setActionSequence: actionSequence
- forEvent: anEventSelector
- 
- 	| action |
- 	"This is a good time to compact the action sequence of old, garbage collected stuff."
- 	action := actionSequence asMinimalRepresentation.
- 	action
- 		ifNil: [ self removeActionsForEvent: anEventSelector]
- 		ifNotNil: [
- 			self updateableActionMap
- 				at: anEventSelector asSymbol
- 				put: action]!

Item was removed:
- ----- Method: Object>>triggerEvent: (in category 'events-triggering') -----
- triggerEvent: anEventSelector
- 	"Evaluate all actions registered for <anEventSelector>. Return the value of the last registered action."
- 
-     ^(self actionForEvent: anEventSelector) value!

Item was removed:
- ----- Method: Object>>triggerEvent:ifNotHandled: (in category 'events-triggering') -----
- triggerEvent: anEventSelector
- ifNotHandled: anExceptionBlock
- 	"Evaluate all actions registered for <anEventSelector>. Return the value of the last registered action."
- 
-     ^(self 
- 		actionForEvent: anEventSelector
- 		ifAbsent: [^anExceptionBlock value]) value
- !

Item was removed:
- ----- Method: Object>>triggerEvent:with: (in category 'events-triggering') -----
- triggerEvent: anEventSelector
- with: anObject
- 
-     ^self 
- 		triggerEvent: anEventSelector
- 		withArguments: (Array with: anObject)!

Item was removed:
- ----- Method: Object>>triggerEvent:with:ifNotHandled: (in category 'events-triggering') -----
- triggerEvent: anEventSelector
- with: anObject
- ifNotHandled: anExceptionBlock
- 
-     ^self 
- 		triggerEvent: anEventSelector
- 		withArguments: (Array with: anObject)
- 		ifNotHandled: anExceptionBlock!

Item was removed:
- ----- Method: Object>>triggerEvent:withArguments: (in category 'events-triggering') -----
- triggerEvent: anEventSelector
- withArguments: anArgumentList
- 
-     ^(self actionForEvent: anEventSelector)
-         valueWithArguments: anArgumentList!

Item was removed:
- ----- Method: Object>>triggerEvent:withArguments:ifNotHandled: (in category 'events-triggering') -----
- triggerEvent: anEventSelector
- withArguments: anArgumentList
- ifNotHandled: anExceptionBlock
- 
-     ^(self 
- 		actionForEvent: anEventSelector
- 		ifAbsent: [^anExceptionBlock value])
-         valueWithArguments: anArgumentList!

Item was removed:
- ----- Method: Object>>updateableActionMap (in category 'events-accessing') -----
- updateableActionMap
- 
- 	^EventManager updateableActionMapFor: self!

Item was removed:
- ----- Method: Object>>when:evaluate: (in category 'events-registering') -----
- when: anEventSelector evaluate: anAction 
- 
- 	| actions |
- 	actions := self actionSequenceForEvent: anEventSelector.
- 	(actions includes: anAction)
- 		ifTrue: [^ self].
- 	self 
- 		setActionSequence: (actions copyWith: anAction)
- 		forEvent: anEventSelector!

Item was removed:
- ----- Method: Object>>when:send:to: (in category 'events-registering') -----
- when: anEventSelector
- send: aMessageSelector
- to: anObject
-  
-     self
-         when: anEventSelector
-         evaluate: (WeakMessageSend
-             receiver: anObject
-             selector: aMessageSelector)!

Item was removed:
- ----- Method: Object>>when:send:to:with: (in category 'events-registering') -----
- when: anEventSelector
- send: aMessageSelector
- to: anObject
- with: anArg
-  
-     self
-         when: anEventSelector
-         evaluate: (WeakMessageSend
-             receiver: anObject
-             selector: aMessageSelector
- 		arguments: (Array with: anArg))!

Item was removed:
- ----- Method: Object>>when:send:to:withArguments: (in category 'events-registering') -----
- when: anEventSelector
- send: aMessageSelector
- to: anObject
- withArguments: anArgArray
-  
-     self
-         when: anEventSelector
-         evaluate: (WeakMessageSend
-             receiver: anObject
-             selector: aMessageSelector
- 		arguments: anArgArray)!

Item was removed:
- Array variableSubclass: #WeakActionSequence
- 	instanceVariableNames: ''
- 	classVariableNames: ''
- 	poolDictionaries: ''
- 	category: 'Kernel-Objects'!

Item was removed:
- ----- Method: WeakActionSequence>>asActionSequence (in category 'converting') -----
- asActionSequence
- 
- 	^self!

Item was removed:
- ----- Method: WeakActionSequence>>asActionSequenceTrappingErrors (in category 'converting') -----
- asActionSequenceTrappingErrors
- 
- 	^WeakActionSequenceTrappingErrors withAll: self!

Item was removed:
- ----- Method: WeakActionSequence>>asMinimalRepresentation (in category 'converting') -----
- asMinimalRepresentation
- 
- 	| valid |
- 	valid := self reject: [:e | e isReceiverOrAnyArgumentGarbage ].
- 	valid size = 0
- 		ifTrue: [ ^nil ].
- 	valid size = 1
- 		ifTrue: [ ^valid first ].
- 	^valid!

Item was removed:
- ----- Method: WeakActionSequence>>printOn: (in category 'printing') -----
- printOn: aStream
- 
- 	self size < 2 ifTrue: [^super printOn: aStream].
- 	aStream nextPutAll: '#('.
- 	self
- 		do: [:each | each printOn: aStream]
- 		separatedBy: [aStream cr].
- 	aStream nextPut: $)!

Item was removed:
- ----- Method: WeakActionSequence>>value (in category 'evaluating') -----
- value
- 	"Answer the result of evaluating the elements of the receiver.
- 	Actually, return just the last result."
- 
- 	^self inject: nil into: [ :previousAnswer :each | 
- 		each valueOtherwise: [ previousAnswer ]].!

Item was removed:
- ----- Method: WeakActionSequence>>valueWithArguments: (in category 'evaluating') -----
- valueWithArguments: anArray
- 	"Return the last result"
- 
- 	^self inject: nil into: [ :previousAnswer :each |
- 		each valueWithArguments: anArray otherwise: [ previousAnswer ]]!



More information about the Squeak-dev mailing list