Changes between Version 8 and Version 9 of DebuggerVisualizers
- Timestamp:
- Aug 6, 2007, 2:16:34 PM (15 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
DebuggerVisualizers
v8 v9 42 42 43 43 Though each debugger UI usually tries to display the data as nicely as possible, 44 with complex types such as those of B OOST, the general approach usually does not allow the user44 with complex types such as those of Boost, the general approach usually does not allow the user 45 45 to quickly get the information she needs. 46 46 That's where debugger visualizers come to help: they are user- or library vendor-defined formatting rules … … 51 51 == Visual Studio 2005 == 52 52 53 [http://msdn2.microsoft.com/en-us/vstudio/default.aspx Microsoft Visual Studio 2005] is the first of the Visual Studio versions to support user-customizable debugger visualizers. For CLR languages, such as C#, the possibilities are even more powerful, and documented. Native C++ debugger visualizers are not documented, though it was claimed by some people from Microsoft that some docs are coming - so if you know of some, please let us know!53 [http://msdn2.microsoft.com/en-us/vstudio/default.aspx Microsoft Visual Studio 2005] is the first of the Visual Studio versions to support user-customizable debugger visualizers. For CLR languages, such as C#, the possibilities are even more powerful, and documented. Native C++ debugger visualizers are not documented, though it was claimed by some people from Microsoft that some docs are coming - so if you know of some, please [wiki:DebuggerVisualizers#Activedevelopers let us know]! 54 54 55 55 === Native C++ Debugger Visualizers for MSVS 2005 === … … 67 67 Visualizers for {{{boost::multi_index_container}}} stored at http://svn.boost.org/svn/boost/sandbox/boost_docs/sandbox 68 68 69 Other existing visualizers will be added shortly. If you're lacking a visualizer for your favorite type, let us know or write one yourself - it's easy! 69 Other existing visualizers will be added shortly. If you're lacking a visualizer for your favorite type, 70 [wiki:DebuggerVisualizers#Activedevelopers let us know] or write one yourself - it's easy! 70 71 71 72 === HOWTO === 72 73 73 Our main source of knowledge is the [http://www.virtualdub.org/blog/pivot/entry.php?id=120 blog at virtualdub.org]. I'll try to repeat some of the basic info you need to get started. 74 Our main source of knowledge is the [http://www.virtualdub.org/blog/pivot/entry.php?id=120 blog at virtualdub.org] 75 and the experience that we gained doing our own visualizers for Boost. 76 I'll try to summarize our current knowledge here. 74 77 75 78 Visualizers (visualizer '''rules''') have this general format: … … 218 221 but recursive depth-first. {{{skip_expr}}} is used to tell the shape of the tree (usually {{{skip: 0}}}). 219 222 220 ===== conditionals =====221 222 There is a {{{#if (expr) ( then_expr ) #el se ( else_expr )}}} construct (with the ___else___ partoptional)223 ===== Conditionals ===== 224 225 There is a {{{#if (expr) ( then_expr ) #elif ( elif_expr ) ... #else ( else_expr )}}} construct (with the {{{#else}}} parts optional) 223 226 and a {{{#switch(switch_expr) #case case0_value ( case0_expr ) ... #default ( default_expr ) #except ( except_expr ) )}}} 224 227 construct that can be used in the expressions. My guess (haven't tried) is that values matching {{{except_expr}}}