[squeak-dev] The Trunk: System-eem.1152.mcz

commits at source.squeak.org commits at source.squeak.org
Wed Apr 15 23:11:27 UTC 2020


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

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

Name: System-eem.1152
Author: eem
Time: 15 April 2020, 4:11:22.143513 pm
UUID: 3e0d01fb-556b-4a58-926d-417c7b193a4e
Ancestors: System-mt.1151

Change some SystemNavigation methods to use selectorsDo:; messagesDo: should be deprecated at some point.

=============== Diff against System-mt.1151 ===============

Item was changed:
  ----- Method: SystemNavigation>>allUnimplementedCalls (in category 'query') -----
  allUnimplementedCalls
  	"Answer a collection of each message that is sent by an expression in a method but is not implemented by any object in the system."
  
  	| result implementedMessages |
  	implementedMessages := self allImplementedMessages.
  	result := OrderedCollection new.
  	self allSelectorsAndMethodsDo: [ :behavior :selector :method |
+ 		method selectorsDo: [ :each |
- 		method messagesDo: [ :each |
  			(implementedMessages includes: each) ifFalse: [
  					result add: (String streamContents: [ :stream |
  						stream
  							nextPutAll: behavior name;
  							space;
  							nextPutAll: selector;
  							space;
  							nextPutAll: 'calls: ';
  							nextPutAll: each ]) ] ] ].
  	^result!

Item was changed:
  ----- Method: SystemNavigation>>allUnimplementedNonPrimitiveCalls (in category 'query') -----
  allUnimplementedNonPrimitiveCalls
  	"Answer an collection of each message that is sent by an expression in a method but is not implemented by any object in the system. This list won't include primitive methods."
  
  	| result implementedMessages |
  	implementedMessages := self allImplementedMessages.
  	result := OrderedCollection new.
  	self allSelectorsAndMethodsDo: [ :behavior :selector :method |
  		method primitive = 0 ifTrue: [
+ 			method selectorsDo: [ :each |
- 			method messagesDo: [ :each |
  				(implementedMessages includes: each) ifFalse: [
  					result add: (String streamContents: [ :stream |
  						stream
  							nextPutAll: behavior name;
  							space;
  							nextPutAll: selector;
  							space;
  							nextPutAll: 'calls: ';
  							nextPutAll: each ]) ] ] ] ].
  	^result!

Item was changed:
  ----- Method: SystemNavigation>>unimplemented (in category 'query') -----
  unimplemented
  	"Answer an collection of each message that is sent by an expression in a method but is not implemented by any object in the system."
  
  	| implemented unimplemented |
  	implemented := self allImplementedMessages.
  	unimplemented := IdentityDictionary new.
  	self allSelectorsAndMethodsDo: [ :behavior :selector :method |
+ 		method selectorsDo: [ :each |
- 		method messagesDo: [ :each |
  			| entry |
  			(implemented includes: each) ifFalse: [
  				entry := unimplemented 
  					at: each 
  					ifPresent: [ :oldEntry |
  						oldEntry copyWith: behavior name, '>', selector ]
  					ifAbsent: [ 
  						{ behavior name, '>', selector } ].
  				unimplemented at: each put: entry ] ] ].
  	^unimplemented!



More information about the Squeak-dev mailing list