www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.debugger - VisualD Can now execute class/struct methods __debugOverview,

reply FunkyD <MrFunky YourDaddy.com> writes:
Can now execute class/struct methods __debugOverview, 
__debugExpaanded, __debugTextView
to customize display in the debugger

? How does one use these I can't find anything else about them, 
not in the source code.
Jul 05 2020
parent reply Rainer Schuetze <r.sagitario gmx.de> writes:
On 05/07/2020 14:10, FunkyD wrote:
 Can now execute class/struct methods __debugOverview, __debugExpaanded,
 __debugTextView
 to customize display in the debugger
 
 ? How does one use these I can't find anything else about them, not in
 the source code.
 
I have added some documentation here: https://rainers.github.io/visuald/visuald/Debugging.html#customization
Jul 05 2020
parent reply FunkyD <MrFunky YourDaddy.com> writes:
On Sunday, 5 July 2020 at 18:58:50 UTC, Rainer Schuetze wrote:
 On 05/07/2020 14:10, FunkyD wrote:
 Can now execute class/struct methods __debugOverview, 
 __debugExpaanded,
 __debugTextView
 to customize display in the debugger
 
 ? How does one use these I can't find anything else about 
 them, not in the source code.
 
I have added some documentation here: https://rainers.github.io/visuald/visuald/Debugging.html#customization
I've tried that. I switched the debuggers in the debug options and general options to use mago. The only thing I have gotten was a magnifier glass(the visualizer). I tried going to a watch window and add but visualD and studio crashed. struct test { int x; auto __debugOverview() { return "asdfsda"; } auto __debugExpanded() { struct x { int x, y; } return x(3,3); } auto __debugTextView() { return "asdfsda"; } auto __debugStringView() { return "{x:asdfsda}"; } } void main() { test t; return; } Also, in the general options it has debug[Overview|Expanded|Visualizer]. The help seems inconsistent with the various _debug functions. There seems to be a bug somewhere. I started a different project and copied that code and it works! I originally had it in another project. The new project has Visual Studio x86 mixed mode set for the debugger! I thought I read that it must be mago. So it seems to work but there seems to be a bug that causes a crash and does not properly handle. Ok, I changed the old project back from mago to VSx86MM and it works. So this seems to be an issue with mago. mago debugger can now evaluate class/struct methods/fields __debugOverview, __debugExpanded, __debugTextView to customize display in the debugger experimental: can now display ranges similar to arrays some performance improvements by caching some data while the debuggee is stopped I assumed mago debugger meant for mago debugger. In any case, the crash is not good(happens when I go from locals to watch). Thanks
Jul 05 2020
parent Rainer Schuetze <r.sagitario gmx.de> writes:
On 05/07/2020 22:25, FunkyD wrote:
 On Sunday, 5 July 2020 at 18:58:50 UTC, Rainer Schuetze wrote:
[...] I could not reproduce crashes with your code.
 
 Also, in the general options it has debug[Overview|Expanded|Visualizer].
 The help seems inconsistent with the various _debug functions.
 
The __debugVisualizer was an intermediate version of the name, I'll fix that.
 There seems to be a bug somewhere.
 
 I started a different project and copied that code and it works! I
 originally had it in another project. The new project has Visual Studio
 x86 mixed mode set for the debugger! I thought I read that it must be mago.
 
 So it seems to work but there seems to be a bug that causes a crash and
 does not properly handle.
 
 
 Ok, I changed the old project back from mago to VSx86MM and it works. So
 this seems to be an issue with mago.
The mago debug *engine* is considered legacy for Visual Studio versions that don't have a recent "Concord" debugger, i.e. 2013 or earlier. Most of its code is shared with the mago debugger *extension*, though, but only the latter supports function execution.
 
 mago debugger
 
     can now evaluate class/struct methods/fields __debugOverview,
 __debugExpanded, __debugTextView to customize display in the debugger
     experimental: can now display ranges similar to arrays
     some performance improvements by caching some data while the
 debuggee is stopped
 
 
 I assumed mago debugger meant for mago debugger. In any case, the crash
 is not good(happens when I go from locals to watch).
Might be that some of the new functionality is not properly disabled with the debug engine.
Jul 06 2020