I feel you :)

Without having thought this through completely: if you look at the 
implementation of DynamicVariable>>value:during: you’ll see that the way it 
works is that the variable is bound to the active process. In the debugger you 
have access to the process that is being debugged and thus you should have 
access to the variables bound to it. You could try accessing all such variables 
by iterating over them (which I think will require an extension on Process 
because you’d need to access at least the PSKeys class variable).

Cheers,
Max

> On 04 Dec 2015, at 00:34, Mariano Martinez Peck <marianop...@gmail.com> wrote:
> 
> Hi guys,
> 
> This thing I will ask in this email it's in my mind since YEARS. But I have 
> always thought it was like that and that there was nothing we could do. 
> However, I think it's time I ask again :)
> 
> For those that have used Seaside, and you try to debug, you know that upon 
> request processing seaside uses Exceptions mechanisim to always have access 
> to the request, session, etc. They way that is done is very smart :)
> 
>  WACurrentRequestContext use: self during: aBlock
> 
> In that case, "self" is the request instance and aBlock the closure that 
> takes care of the request processing. So, inside that closure, everywhere you 
> do "WACurrentRequestContext value" you get the correct request instance.
> 
> So..that's great for Seaside, but debugging gets complicated. While you can 
> restart, proceed, etc, once inside debugger, you  cannot evaluate any piece 
> of code that will use the session  or request because you get a 
> WARequestContextNotFound. Of course, because I guess the evaluation you do 
> from cmd+d on a piece of text or via the debugger inspector, creates another 
> closure/context which does not receive the WACurrentRequestContext instance. 
> 
> Now....besides WACurrentRequestContext I have my own class 
> UserContextInformation where I basically have a bunch of stuff associated to 
> the logged user. And I do exactly the same as the WACurrentRequestContext. 
> And I have the same problem. I really want to be able to fix this.
> 
> Anyone have an idea on how can I do it? I guess I can change the debugger, in 
> the place where I evaluate code so that I wrap that evaluation with my 
> request context instance???
> 
> Thoughts?
> 
> 
> -- 
> Mariano
> http://marianopeck.wordpress.com <http://marianopeck.wordpress.com/>

Reply via email to