The Trunk: System-eem.387.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: System-eem.387.mcz

commits-2
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]]]!