Boost logo

Boost :

Subject: Re: [boost] [variant] Visual Studio debug visualizers
From: Dmitry Vinogradov (sraider_at_[hidden])
Date: 2009-06-22 09:03:23


> Second version:

; [fixed]

boost::variant<*,*,*,*,*,*,*,*,*,*,*> {
     preview (
         #(
             #switch($e.which_)
             #case 0 ( *($T1 *)&($e.storage_.data_) )
             #case 1 ( *($T2 *)&($e.storage_.data_) )
             #case 2 ( *($T3 *)&($e.storage_.data_) )
             #case 3 ( *($T4 *)&($e.storage_.data_) )
             #case 4 ( *($T5 *)&($e.storage_.data_) )
             #case 5 ( *($T6 *)&($e.storage_.data_) )
             #case 6 ( *($T7 *)&($e.storage_.data_) )
             #case 7 ( *($T8 *)&($e.storage_.data_) )
             #case 8 ( *($T9 *)&($e.storage_.data_) )
             #case 9 ( *($T10 *)&($e.storage_.data_) )
             #case -1 ( **($T1 **)&($e.storage_.data_) )
             #case -2 ( **($T2 **)&($e.storage_.data_) )
             #case -3 ( **($T3 **)&($e.storage_.data_) )
             #case -4 ( **($T4 **)&($e.storage_.data_) )
             #case -5 ( **($T5 **)&($e.storage_.data_) )
             #case -6 ( **($T6 **)&($e.storage_.data_) )
             #case -7 ( **($T7 **)&($e.storage_.data_) )
             #case -8 ( **($T8 **)&($e.storage_.data_) )
             #case -9 ( **($T9 **)&($e.storage_.data_) )
             #case -10 ( **($T10 **)&($e.storage_.data_) )
         )
     )
     children
     (
         #(
         [value] :
             #switch($e.which_)
             #case 0 ( *($T1 *)&($e.storage_.data_) )
             #case 1 ( *($T2 *)&($e.storage_.data_) )
             #case 2 ( *($T3 *)&($e.storage_.data_) )
             #case 3 ( *($T4 *)&($e.storage_.data_) )
             #case 4 ( *($T5 *)&($e.storage_.data_) )
             #case 5 ( *($T6 *)&($e.storage_.data_) )
             #case 6 ( *($T7 *)&($e.storage_.data_) )
             #case 7 ( *($T8 *)&($e.storage_.data_) )
             #case 8 ( *($T9 *)&($e.storage_.data_) )
             #case 9 ( *($T10 *)&($e.storage_.data_) )
             #case -1 ( **($T1 **)&($e.storage_.data_) )
             #case -2 ( **($T2 **)&($e.storage_.data_) )
             #case -3 ( **($T3 **)&($e.storage_.data_) )
             #case -4 ( **($T4 **)&($e.storage_.data_) )
             #case -5 ( **($T5 **)&($e.storage_.data_) )
             #case -6 ( **($T6 **)&($e.storage_.data_) )
             #case -7 ( **($T7 **)&($e.storage_.data_) )
             #case -8 ( **($T8 **)&($e.storage_.data_) )
             #case -9 ( **($T9 **)&($e.storage_.data_) )
             #case -10 ( **($T10 **)&($e.storage_.data_) ),
             #([actual members] : [$e,!])
         )
     )
}

boost::recursive_wrapper<*> {
     preview ([$e.p_])
     children (
         #(
             #([ptr] : $e.p_),
             #([actual members] : [$e,!])
         )
     )
}


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk