Nice and well done (the AST inspector too) ! On 07 Aug 2014, at 11:17, Marcus Denker <marcus.denker@inria.fr> wrote:
Hi,
Pharo4 #155 now contains a Pointer explorer build with the Eye Tree Inspector framework:
EyePointerExplorer openOn: #zot
EyePointerExplorer openStrongOn: #zot
Why is this needed? âââââââââ
Currently we still use a sub lass of ObjectExplorer for the PointerExplorer, which means that we can remove the whole package Tool-Explorer now that we have one based on the new inspector.
Next step? ââââââ
- put the new tool as the default (and unify Smalltalk tools strongPointerExplorer with pointerExplorer) - remove package Tool-Explorer (ca. 700 Loc, 6 classes)
Class comment: ============= A variant on the TreeInspector that works "backwards".
By default it shows both weak and strong references (#openOn:) but I can be configured to omit weak refs with #openStrongOn:
Like the TreeInspector, it shows a tree of objects, but expanding a node won't show the objects which that node references, but rather the objects that reference that node. Its main use is to track down memory leaks: if you want to know why a particular object is still alive, open a PointerExplorer on it and drill down until you find the root object that's referencing it. For example, find all the references to the symbol #zot with:
EyePointerExplorer openOn: #zot
For the "name" of the object, the PointerExplorer shows each object's identityHash, to allow the user to identify when two similar objects are identical and notice cycles.