209e9b6faa
also: - added `table::lower_bound()` - added `table::emplace_hint()` - changed `table` key type to `toml::key` - clarified value initializer static assert messages - lots of misc refactoring
149 lines
6.6 KiB
XML
149 lines
6.6 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
|
|
|
|
<Type Name="toml::v3::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::v3::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::v3::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::v3::stdopt::date_time">
|
|
<AlternativeType Name="toml::v3::custopt::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::v3::value<std::basic_string<char,*>>" Priority="High">
|
|
<DisplayString>{{ {val_,s8} }}</DisplayString>
|
|
<Expand>
|
|
<Item Name="value" ExcludeView="simple">val_,s8</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<Type Name="toml::v3::value<*>" Priority="MediumLow">
|
|
<DisplayString>{{ {val_} }}</DisplayString>
|
|
<Expand>
|
|
<Item Name="value" ExcludeView="simple">val_</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<Type Name="toml::v3::source_position">
|
|
<DisplayString>line {line,d}, column {column,d}</DisplayString>
|
|
<Expand>
|
|
<Item Name="line" ExcludeView="simple">line,d</Item>
|
|
<Item Name="column" ExcludeView="simple">column,d</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<Type Name="toml::v3::key">
|
|
<Intrinsic Name="source_begin_zero" Expression="!source_.begin.line && !source_.begin.column" />
|
|
<DisplayString Condition="!source_begin_zero()">{key_,s8} ({source_.begin})</DisplayString>
|
|
<DisplayString Condition="source_begin_zero()">{key_,s8}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[string]" ExcludeView="simple">key_,s8</Item>
|
|
<Item Name="[begin]" ExcludeView="simple">source_.begin</Item>
|
|
<Item Name="[end]" ExcludeView="simple">source_.end</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<Type Name="toml::v3::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::v3::array">
|
|
<DisplayString>{elems_}</DisplayString>
|
|
<Expand>
|
|
<!-- Modified from std::vector visualizer in VS 2019 stl.natvis -->
|
|
<IndexListItems>
|
|
<Size>elems_._Mypair._Myval2._Mylast - elems_._Mypair._Myval2._Myfirst</Size>
|
|
<ValueNode>*elems_._Mypair._Myval2._Myfirst[$i]</ValueNode>
|
|
</IndexListItems>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<Type Name="toml::v3::noex::parse_error">
|
|
<DisplayString>line {source_.begin.line}: {description_,s8b}</DisplayString>
|
|
</Type>
|
|
|
|
<Type Name="toml::v3::ex::parse_error">
|
|
<DisplayString>line {source_.begin.line}: {_Data._What,s8b}</DisplayString>
|
|
</Type>
|
|
|
|
<Type Name="toml::v3::noex::parse_result">
|
|
<DisplayString Condition="!err_">{*reinterpret_cast<toml::v3::table*>(&storage_.bytes)}</DisplayString>
|
|
<DisplayString Condition="err_">{*reinterpret_cast<toml::v3::noex::parse_error*>(&storage_.bytes)}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[table]" Condition="!err_">*reinterpret_cast<toml::v3::table*>(&storage_.bytes)</Item>
|
|
<Item Name="[error]" Condition="err_">*reinterpret_cast<toml::v3::noex::parse_error*>(&storage_.bytes)</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
|
|
</AutoVisualizer>
|