The Trunk: Kernel-eem.846.mcz

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

The Trunk: Kernel-eem.846.mcz

commits-2
Eliot Miranda uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-eem.846.mcz

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

Name: Kernel-eem.846
Author: eem
Time: 2 May 2014, 4:04:03.262 pm
UUID: b9c690a8-8a32-44bc-b553-2a2bceedae70
Ancestors: Kernel-cmm.845

Fix whichMethodsStoreInto: for pool variables.
Any kind soul who wants to do the same for
whichSelectorsStoreInto: et al is encouraged
to do so. The test case is looking for reads or writes
of a pool variable.

=============== Diff against Kernel-cmm.845 ===============

Item was removed:
- ----- Method: Class>>whichMethodsStoreInto: (in category 'testing') -----
- whichMethodsStoreInto: varName
- "Answer a collection of CompiledMethod whose methods access the argument, varName, as a named class variable. Or let super try with a named instance variable."
- | ref |
- ref := self classPool
- associationAt: varName
- ifAbsent: [ ^ super whichMethodsStoreInto: varName ].
- ^self methodDict values select: [:eachMethod | eachMethod writesRef: ref ]!

Item was added:
+ ----- Method: ClassDescription>>whichMethodsStoreInto: (in category 'testing') -----
+ whichMethodsStoreInto: varName
+ "Answer a collection of CompiledMethod whose methods access the argument, varName,
+ as a named class or pool variable. Or let super try with a named instance variable."
+ ^(self bindingOf: varName)
+ ifNil: [super whichMethodsStoreInto: varName]
+ ifNotNil: [:ref| self methodDict values select: [:eachMethod| eachMethod writesRef: ref]]!

Item was removed:
- ----- Method: Metaclass>>whichMethodsStoreInto: (in category 'testing') -----
- whichMethodsStoreInto: varName
- "Answer a collection of CompiledMethod which store into the argument, varName, as a named class variable. Or let super try with a named instance variable."
- | ref |
- ref := self classPool
- associationAt: varName
- ifAbsent: [ ^ super whichMethodsStoreInto: varName ].
- ^self methodDict values select: [:eachMethod | eachMethod writesRef: ref ]!