forked from danielaparker/jsoncons
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathJsoncons.natvis
More file actions
48 lines (44 loc) · 2.6 KB
/
Jsoncons.natvis
File metadata and controls
48 lines (44 loc) · 2.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<?xml version="1.0" encoding="utf-8"?>
<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
<!-- jsoncons::basic_json - basic support -->
<Type Name="jsoncons::key_value<*,*>" IncludeView="jsonconsHelper">
<DisplayString> {value_} </DisplayString>
<Expand>
<Item Name="type">(json_storage_kind)value_.common_stor_.storage_kind_</Item>
<Item Name="key">key_</Item>
<Item Name="value">value_</Item>
</Expand>
</Type>
<Type Name="std::vector<jsoncons::key_value<*,*>,*>">
<Intrinsic Name="size" Expression="(size_t)(_Mypair._Myval2._Mylast - _Mypair._Myval2._Myfirst)" />
<DisplayString>{{ items={size()} }}</DisplayString>
<Expand>
<CustomListItems>
<Variable Name="i" InitialValue="0"/>
<Size>size()</Size>
<Loop>
<Item Name="{i}:{_Mypair._Myval2._Myfirst[i].key_}">_Mypair._Myval2._Myfirst[i]</Item>
<Exec>i++</Exec>
</Loop>
</CustomListItems>
</Expand>
</Type>
<Type Name="jsoncons::basic_json<*>">
<DisplayString Condition="common_stor_.storage_kind_ == json_storage_kind::boolean">{bool_stor_.val_}</DisplayString>
<DisplayString Condition="common_stor_.storage_kind_ == json_storage_kind::int64">{int64_stor_.val_}</DisplayString>
<DisplayString Condition="common_stor_.storage_kind_ == json_storage_kind::uint64">{uint64_stor_.val_}</DisplayString>
<DisplayString Condition="common_stor_.storage_kind_ == json_storage_kind::float64">{double_stor_.val_}</DisplayString>
<DisplayString Condition="common_stor_.storage_kind_ == json_storage_kind::half_float">{half_stor_.val_}</DisplayString>
<DisplayString Condition="common_stor_.storage_kind_ == json_storage_kind::short_str">{short_string_stor_.data_,s}</DisplayString>
<DisplayString Condition="common_stor_.storage_kind_ == json_storage_kind::long_str">{long_string_stor_.ptr_->p_,s}</DisplayString>
<DisplayString Condition="common_stor_.storage_kind_ == json_storage_kind::byte_str">{byte_string_stor_.ptr_->p_,s}</DisplayString>
<DisplayString Condition="common_stor_.storage_kind_ == json_storage_kind::array">{array_stor_.ptr_->elements_}</DisplayString>
<Expand>
<ArrayItems Condition="common_stor_.storage_kind_ == json_storage_kind::array">
<Size>array_stor_.ptr_->elements_._Mypair._Myval2._Mylast - array_stor_.ptr_->elements_._Mypair._Myval2._Myfirst</Size>
<ValuePointer>array_stor_.ptr_->elements_._Mypair._Myval2._Myfirst</ValuePointer>
</ArrayItems>
<ExpandedItem Condition="common_stor_.storage_kind_ == json_storage_kind::object">object_stor_.ptr_->members_</ExpandedItem>
</Expand>
</Type>
</AutoVisualizer>