a29ecda102
also: - fixed parse_result natvis - added parse_result default constructor - added nested value limit example to error printer
141 lines
6.2 KiB
XML
141 lines
6.2 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
|
|
|
|
<Type Name="toml::v2::date">
|
|
<Intrinsic Name="y" Expression="(int)year" />
|
|
<Intrinsic Name="m" Expression="(int)month" />
|
|
<Intrinsic Name="d" Expression="(int)day" />
|
|
<DisplayString Condition="y() < 10 && m() < 10 && d() < 10">0{y()}-0{m()}-0{d()}</DisplayString>
|
|
<DisplayString Condition="y() < 10 && m() < 10">0{y()}-0{m()}-{d()}</DisplayString>
|
|
<DisplayString Condition="y() < 10 && d() < 10">0{y()}-{m()}-0{d()}</DisplayString>
|
|
<DisplayString Condition="m() < 10 && d() < 10">{y()}-0{m()}-0{d()}</DisplayString>
|
|
<DisplayString Condition="y() < 10">0{y()}-{m()}-{d()}</DisplayString>
|
|
<DisplayString Condition="m() < 10">{y()}-0{m()}-{d()}</DisplayString>
|
|
<DisplayString Condition="d() < 10">{y()}-{m()}-0{d()}</DisplayString>
|
|
<DisplayString>{y()}-{m()}-{d()}</DisplayString>
|
|
<Expand>
|
|
<Item Name="year" ExcludeView="simple">year</Item>
|
|
<Item Name="month" ExcludeView="simple">month</Item>
|
|
<Item Name="day" ExcludeView="simple">day</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<Type Name="toml::v2::time">
|
|
<Intrinsic Name="h" Expression="(int)hour" />
|
|
<Intrinsic Name="m" Expression="(int)minute" />
|
|
<Intrinsic Name="s" Expression="(int)(second + (int)(nanosecond / 1000000000.0))" />
|
|
<DisplayString Condition="h() < 10 && m() < 10 && s() < 10">0{h()}:0{m()}:0{s()}</DisplayString>
|
|
<DisplayString Condition="h() < 10 && m() < 10">0{h()}:0{m()}:{s()}</DisplayString>
|
|
<DisplayString Condition="h() < 10 && s() < 10">0{h()}:{m()}:0{s()}</DisplayString>
|
|
<DisplayString Condition="m() < 10 && s() < 10">{h()}:0{m()}:0{s()}</DisplayString>
|
|
<DisplayString Condition="h() < 10">0{h()}:{m()}:{s()}</DisplayString>
|
|
<DisplayString Condition="m() < 10">{h()}:0{m()}:{s()}</DisplayString>
|
|
<DisplayString Condition="s() < 10">{h()}:{m()}:0{s()}</DisplayString>
|
|
<DisplayString>{h()}:{m()}:{s()}</DisplayString>
|
|
<Expand>
|
|
<Item Name="hour" ExcludeView="simple">hour</Item>
|
|
<Item Name="minute" ExcludeView="simple">minute</Item>
|
|
<Item Name="second" ExcludeView="simple">second</Item>
|
|
<Item Name="nanosecond" ExcludeView="simple">nanosecond</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<Type Name="toml::v2::time_offset">
|
|
<Intrinsic Name="absmin" Expression="((int)minutes ^ ((int)minutes >> 31)) - ((int)minutes >> 31)" />
|
|
<Intrinsic Name="h" Expression="absmin() / 60u" />
|
|
<Intrinsic Name="m" Expression="absmin() % 60u" />
|
|
<DisplayString Condition="minutes == 0">Z</DisplayString>
|
|
<DisplayString Condition="minutes < 0 && h() < 10 && m() < 10">-0{h()}:0{m()}</DisplayString>
|
|
<DisplayString Condition="minutes < 0 && h() < 10">-0{h()}:{m()}</DisplayString>
|
|
<DisplayString Condition="minutes < 0 && m() < 10">-{h()}:0{m()}</DisplayString>
|
|
<DisplayString Condition="minutes < 0">-{h()}:{m()}</DisplayString>
|
|
<DisplayString Condition="h() < 10 && m() < 10">0{h()}:0{m()}</DisplayString>
|
|
<DisplayString Condition="h() < 10">0{h()}:{m()}</DisplayString>
|
|
<DisplayString Condition="m() < 10">{h()}:0{m()}</DisplayString>
|
|
<DisplayString>{h()}:{m()}</DisplayString>
|
|
<Expand>
|
|
<Item Name="minutes" ExcludeView="simple">minutes</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<Type Name="toml::v2::stdopt::date_time">
|
|
<DisplayString Condition="offset._Has_value">{date}T{time}{offset}</DisplayString>
|
|
<DisplayString>{date}T{time}</DisplayString>
|
|
<Expand>
|
|
<Item Name="date" ExcludeView="simple">date</Item>
|
|
<Item Name="time" ExcludeView="simple">time</Item>
|
|
<Item Name="offset" ExcludeView="simple">offset</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<Type Name="toml::v2::value<*>" Priority="MediumLow">
|
|
<DisplayString>{{ {val_} }}</DisplayString>
|
|
<Expand>
|
|
<Item Name="val_" ExcludeView="simple">val_</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<Type Name="toml::v2::value<std::basic_string<char,*>>">
|
|
<DisplayString>{{ {val_,s8} }}</DisplayString>
|
|
<Expand>
|
|
<Item Name="val_" ExcludeView="simple">val_,s8</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<Type Name="toml::v2::source_position">
|
|
<DisplayString>line {line}, column {column}</DisplayString>
|
|
<Expand>
|
|
<Item Name="line" ExcludeView="simple">line</Item>
|
|
<Item Name="column" ExcludeView="simple">column</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<Type Name="toml::v2::impl::utf8_codepoint">
|
|
<DisplayString>{&bytes,s8} ({position})</DisplayString>
|
|
</Type>
|
|
|
|
<Type Name="toml::v2::table">
|
|
<DisplayString>{map}</DisplayString>
|
|
<Expand>
|
|
<!-- Modified from std::map visualizer in VS 2019 stl.natvis -->
|
|
<TreeItems>
|
|
<Size>map._Mypair._Myval2._Myval2._Mysize</Size>
|
|
<HeadPointer>map._Mypair._Myval2._Myval2._Myhead->_Parent</HeadPointer>
|
|
<LeftPointer>_Left</LeftPointer>
|
|
<RightPointer>_Right</RightPointer>
|
|
<ValueNode Condition="_Isnil == 0" Name="[{_Myval.first,s8}]">*_Myval.second</ValueNode>
|
|
</TreeItems>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<Type Name="toml::v2::array">
|
|
<DisplayString>{elements}</DisplayString>
|
|
<Expand>
|
|
<!-- Modified from std::vector visualizer in VS 2019 stl.natvis -->
|
|
<IndexListItems>
|
|
<Size>elements._Mypair._Myval2._Mylast - elements._Mypair._Myval2._Myfirst</Size>
|
|
<ValueNode>*elements._Mypair._Myval2._Myfirst[$i]</ValueNode>
|
|
</IndexListItems>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<Type Name="toml::v2::noex::parse_error">
|
|
<DisplayString>line {source_.begin.line}: {description_,s8b}</DisplayString>
|
|
</Type>
|
|
|
|
<Type Name="toml::v2::ex::parse_error">
|
|
<DisplayString>line {source_.begin.line}: {_Data._What,s8b}</DisplayString>
|
|
</Type>
|
|
|
|
<Type Name="toml::v2::noex::parse_result">
|
|
<DisplayString Condition="!err_">{*reinterpret_cast<toml::v2::table*>(&storage_.bytes)}</DisplayString>
|
|
<DisplayString Condition="err_">{*reinterpret_cast<toml::v2::noex::parse_error*>(&storage_.bytes)}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[table]" Condition="!err_">*reinterpret_cast<toml::v2::table*>(&storage_.bytes)</Item>
|
|
<Item Name="[error]" Condition="err_">*reinterpret_cast<toml::v2::noex::parse_error*>(&storage_.bytes)</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
|
|
</AutoVisualizer>
|