[squeak-dev] Re: Debugger: PLEASE READ [was Re: Request for
feedback: mirrors]
Andreas Raab
andreas.raab at gmx.de
Wed May 23 19:04:38 UTC 2012
On 5/23/2012 20:51, Eliot Miranda wrote:
> So given that the Interpreter VM now supports the mirror primitives,
> does anyone object if I add the debugger changes to trunk that use the
> mirror primitives and hence make accurate debugging of proxies possible?
> The downside of doing this is that the debugger will be broken on
> older VMs.
It should be possible to write the mirror prims relatively safely, e.g.:
object: anObject instVarAt: anIndex
"Primitive. Answer a fixed variable in an object. The numbering of the
variables corresponds to the named instance variables. Fail if the index
is not an Integer or is not the index of a fixed variable. Essential
for the
debugger. See Object documentation whatIsAPrimitive."
<primitive: 73>
anIndex <= (self objectClass: anObject) instSize
ifTrue:["Assume mirror primitives are missing"
^anObject instVarAt: index]
ifFalse:["Access beyond fixed variables."
^self object: anObject basicAt: anIndex - (self objectClass:
anObject) instSize].
Cheers,
- Andreas
More information about the Squeak-dev
mailing list
|