Hi Richard,

Thanks for the reply, I add my comments between your lines.

On Tue, Aug 25, 2020 at 4:29 PM Richard Uttner <richard.utt...@gmail.com> wrote:

> sorry for my contribution to this topic being so late. I fully agree to
> Martin's suggestion of checking if an inspected object conforms to the
> rich inspector api before applying it.
>
> For dealing with Glorp, I found an easy solution which Pavel will
> integrate soon in the Glorp port he published some time ago.

Where is this port? I haven't seen it and it would be great if we
could merge it with the canonical repository at pharo-rdbms/glorp
which has been active lately (I even have a few bugfixes to submit)

> My approach
> to find the trigger(s) resolving the proxy was simply hooking
> #doesNotUnderstand: with a Transcript trace of the current message. So I
> found out that it were only 3, which I list below along with my
> implementation in Proxy that stopped any resolving:

Simple and clever.

> gtDisplayString
>      self isInstantiated
>          ifTrue: [ ^self class name , ' on ', value gtDisplayString].
>      ^self class name, ' uninstantiated on ', self query resultClass name

I had this.

> gtInspectorVariableNodesIn: aCollection
> readSlot: aSlot

I hadn't these. I'll add them as an extension to the Proxy class.

> With this approach, I was not able to trigger proxy resolution by just
> navigating in the inspector, I had to explicitely send #getValue to the
> slot. Hope this helps until we have a more general solution!

This is exactly what I needed.

Thank you very much!

Reply via email to