[Pkg] The Trunk: System-eem.387.mcz
commits at source.squeak.org
commits at source.squeak.org
Fri Oct 22 17:42:53 UTC 2010
Eliot Miranda uploaded a new version of System to project The Trunk:
http://source.squeak.org/trunk/System-eem.387.mcz
==================== Summary ====================
Name: System-eem.387
Author: eem
Time: 22 October 2010, 10:41:25.632 am
UUID: 9fd64e14-1a90-41a6-a93d-e9e04b11b68f
Ancestors: System-ul.386
SystemNavigation>unusedBlocks.
Some MethodReference reorganization.
=============== Diff against System-ul.386 ===============
Item was changed:
+ ----- Method: MethodReference>><= (in category 'comparing') -----
- ----- Method: MethodReference>><= (in category 'comparisons') -----
<= anotherMethodReference
classSymbol < anotherMethodReference classSymbol ifTrue: [^true].
classSymbol > anotherMethodReference classSymbol ifTrue: [^false].
classIsMeta = anotherMethodReference classIsMeta ifFalse: [^classIsMeta not].
^methodSymbol <= anotherMethodReference methodSymbol
!
Item was changed:
+ ----- Method: MethodReference>>= (in category 'comparing') -----
- ----- Method: MethodReference>>= (in category 'comparisons') -----
= anotherMethodReference
"Answer whether the receiver and the argument represent the
same object."
^ self species == anotherMethodReference species
and: [self classSymbol = anotherMethodReference classSymbol
and: [self classIsMeta = anotherMethodReference classIsMeta
and: [self methodSymbol = anotherMethodReference methodSymbol]]]!
Item was changed:
+ ----- Method: MethodReference>>asStringOrText (in category 'accessing') -----
- ----- Method: MethodReference>>asStringOrText (in category 'comparisons') -----
asStringOrText
^stringVersion ifNil: [ self stringVersionDefault ]!
Item was changed:
+ ----- Method: MethodReference>>category (in category 'accessing') -----
- ----- Method: MethodReference>>category (in category 'queries') -----
category
"Answers the class category (cached for reuse via MC and other tools)"
^ category ifNil: [category := self actualClass organization categoryOfElement: methodSymbol]!
Item was changed:
+ ----- Method: MethodReference>>category: (in category 'initialize-release') -----
- ----- Method: MethodReference>>category: (in category 'setting') -----
category: aSymbol
category := aSymbol!
Item was changed:
+ ----- Method: MethodReference>>classIsMeta (in category 'testing') -----
- ----- Method: MethodReference>>classIsMeta (in category 'queries') -----
classIsMeta
^classIsMeta!
Item was changed:
+ ----- Method: MethodReference>>classSymbol (in category 'accessing') -----
- ----- Method: MethodReference>>classSymbol (in category 'queries') -----
classSymbol
^classSymbol!
Item was changed:
+ ----- Method: MethodReference>>hash (in category 'comparing') -----
- ----- Method: MethodReference>>hash (in category 'comparisons') -----
hash
"Answer a SmallInteger whose value is related to the receiver's
identity."
^ (self species hash bitXor: self classSymbol hash)
bitXor: self methodSymbol hash!
Item was changed:
+ ----- Method: MethodReference>>isValid (in category 'testing') -----
- ----- Method: MethodReference>>isValid (in category 'queries') -----
isValid
"Answer whether the receiver represents a current selector or Comment"
| aClass |
methodSymbol isDoIt ifTrue: [^ false].
(aClass := self actualClass) ifNil: [^ false].
^ (aClass includesSelector: methodSymbol) or:
[methodSymbol == #Comment]!
Item was changed:
+ ----- Method: MethodReference>>methodSymbol (in category 'accessing') -----
- ----- Method: MethodReference>>methodSymbol (in category 'queries') -----
methodSymbol
^methodSymbol!
Item was changed:
+ ----- Method: MethodReference>>printOn: (in category 'printing') -----
- ----- Method: MethodReference>>printOn: (in category 'queries') -----
printOn: aStream
"Print the receiver on a stream"
super printOn: aStream.
aStream nextPutAll: ' ', self actualClass name, ' >> ', methodSymbol!
Item was changed:
+ ----- Method: MethodReference>>selector (in category 'accessing') -----
- ----- Method: MethodReference>>selector (in category 'queries') -----
selector
^methodSymbol!
Item was changed:
+ ----- Method: MethodReference>>setClass:methodSymbol:stringVersion: (in category 'initialize-release') -----
- ----- Method: MethodReference>>setClass:methodSymbol:stringVersion: (in category 'setting') -----
setClass: aClass methodSymbol: methodSym stringVersion: aString
classSymbol := aClass theNonMetaClass name.
classIsMeta := aClass isMeta.
methodSymbol := methodSym.
stringVersion := aString.!
Item was changed:
+ ----- Method: MethodReference>>setClassAndSelectorIn: (in category 'initialize-release') -----
- ----- Method: MethodReference>>setClassAndSelectorIn: (in category 'setting') -----
setClassAndSelectorIn: csBlock
^csBlock value: self actualClass value: methodSymbol!
Item was changed:
+ ----- Method: MethodReference>>setClassSymbol:classIsMeta:methodSymbol:stringVersion: (in category 'initialize-release') -----
- ----- Method: MethodReference>>setClassSymbol:classIsMeta:methodSymbol:stringVersion: (in category 'setting') -----
setClassSymbol: classSym classIsMeta: isMeta methodSymbol: methodSym stringVersion: aString
classSymbol := classSym.
classIsMeta := isMeta.
methodSymbol := methodSym.
stringVersion := aString.!
Item was changed:
+ ----- Method: MethodReference>>setStandardClass:methodSymbol: (in category 'initialize-release') -----
- ----- Method: MethodReference>>setStandardClass:methodSymbol: (in category 'setting') -----
setStandardClass: aClass methodSymbol: methodSym
classSymbol := aClass theNonMetaClass name.
classIsMeta := aClass isMeta.
methodSymbol := methodSym.
stringVersion := nil.!
Item was changed:
+ ----- Method: MethodReference>>sourceString (in category 'accessing') -----
- ----- Method: MethodReference>>sourceString (in category 'queries') -----
sourceString
^ (self actualClass sourceCodeAt: self methodSymbol) asString!
Item was changed:
+ ----- Method: MethodReference>>stringVersion (in category 'accessing') -----
- ----- Method: MethodReference>>stringVersion (in category 'string version') -----
stringVersion
^stringVersion!
Item was changed:
+ ----- Method: MethodReference>>stringVersion: (in category 'accessing') -----
- ----- Method: MethodReference>>stringVersion: (in category 'string version') -----
stringVersion: aString
stringVersion := aString!
Item was changed:
+ ----- Method: MethodReference>>stringVersionDefault (in category 'accessing') -----
- ----- Method: MethodReference>>stringVersionDefault (in category 'comparisons') -----
stringVersionDefault
^classSymbol, (classIsMeta ifTrue: [ ' class ' ] ifFalse: [' ']), methodSymbol !
Item was added:
+ ----- Method: SystemNavigation>>unusedBlocks (in category 'query') -----
+ unusedBlocks
+ "Answer all methods that contain a block that is not used (not
+ sent a message, returned, passed as an argument, or assigned)."
+ "SystemNavigation new unusedBlocks"
+ "SystemNavigation new
+ browseMessageList: SystemNavigation new unusedBlocks
+ name: 'unused blocks'"
+ ^self allSelect:
+ [:m| | is |
+ is := InstructionStream on: m.
+ is scanFor: [:b| b = 143 and: [(m at: is thirdByte * 256 + is fourthByte + is pc + 4) = 135]]]!
More information about the Packages
mailing list