Levente Uzonyi uploaded a new version of Tools to project The Trunk: http://source.squeak.org/trunk/Tools-ul.281.mcz
==================== Summary ====================
Name: Tools-ul.281 Author: ul Time: 23 November 2010, 1:37:02.237 pm UUID: 30464fa6-e09b-764a-a157-57bc3f46560d Ancestors: Tools-ul.280
- replaced the PointerFinder >> #isLiteral hack by a direct class check, also reordered the checks in #follow:from:, so cheaper and common ones are performed first.
=============== Diff against Tools-ul.280 ===============
Item was changed: ----- Method: PointerFinder>>follow:from: (in category 'application') ----- follow: anObject from: parentObject + + anObject == goal ifTrue: [ + parents at: anObject put: parentObject. + ^ true]. - anObject == goal - ifTrue: - [parents at: anObject put: parentObject. - ^ true]. - anObject isLiteral ifTrue: [^ false]. "Remove this after switching to new CompiledMethod format --bf 2/12/2006" + (anObject class isPointers or: [ anObject isCompiledMethod ]) ifFalse: [ ^false]. + (anObject class isWeak or: [ + anObject class == self class or: [ + anObject isLiteral or: [ + parents includesKey: anObject ] ] ]) + ifTrue: [ ^false ]. - (anObject class isPointers or: [anObject isCompiledMethod]) ifFalse: [^ false]. - anObject class isWeak ifTrue: [^ false]. - (parents includesKey: anObject) - ifTrue: [^ false]. parents at: anObject put: parentObject. toDoNext add: anObject. ^ false!
Item was removed: - ----- Method: PointerFinder>>isLiteral (in category 'application') ----- - isLiteral - "Horrible hack to omit other Pointer Finders from scanning." - - ^ true!
packages@lists.squeakfoundation.org