Hi.

This is side project of my work on Seamess and RemoteDebuggingTools. You can load it by:

Gofer it
smalltalkhubUser: 'Pharo' project: 'ObjectTravel';
configuration;
loadStable

ObjectTravel is a tool to deeply traverse "native" references of given object through instance variables and "array contents".

Usage is quite simple:

traveler := ObjectTraveler on: (1@2 corner: 3@4).
traveler referencesDo: [:eachRef | eachRed logCr].

Here is list of suitable methods:
  • collectReferences
  • countReferences
  • skip: anObject
  • traverseOnly: predicateBlock
  • copyObject
  • findAllPathsTo: targetObject
  • replaceCurrentReferenceWith: anObject
Details are here��http://dionisiydk.blogspot.fr/2016/07/objecttravel-tool-to-traverse-object.html.

Best regards,
Denis