[squeak-dev] Opening two debuggers in a single doit
David T. Lewis
lewis at mail.msen.com
Thu Jan 25 01:51:04 UTC 2018
On Wed, Jan 24, 2018 at 04:35:11PM -0800, Chris Cunningham wrote:
> On Wed, Jan 24, 2018 at 4:31 PM, tim Rowledge <tim at rowledge.org> wrote:
>
> >
> > > On 24-01-2018, at 4:25 PM, Tobias Pape <Das.Linux at gmx.de> wrote:
> > >
> > > Hold your horses :D
> > > It _is_ sent, indirectly, via:
> > >
> > > openContext: aContext label: aString contents: contentsStringOrNil
> > > "Open a notifier in response to an error, halt, or notify. A
> > notifier view just shows a short view of the sender stack and provides a
> > menu that lets the user open a full debugger."
> > >
> > > ^ Project current
> > > dispatchTo: self
> > > addPrefixAndSend: #OpenContext:label:contents:
> > > withArguments: { aContext . aString . contentsStringOrNil }
> > >
> > > Which, in turn, is also sent???
> >
> > Good grief. What an excellent way to confuse our tools. Most definitely
> > not a technique I???d ever suggest teaching.
> >
> > Nope.
>
> Now, how to fix the sendersOf to detect something pathological like this...
>
> cbc
See the method comment in #dispatchTo:addPrefixAndSend:withArguments:
The mechanism is this pragma:
<hasLiteralTest: #isDispatchSelector:>
Implementation is in Project class>>isDispatchSelector: which identifies the
target selectors. Apparently I left one of the selectors out of the list,
hence the confusion here.
Marcel has made considerable improvements to Squeak Projects in recent years,
and one good effect that I have noticed is that he has been able to reduce
the use of these dispatch methods.
Dave
More information about the Squeak-dev
mailing list
|