File: Jsoncons.natvis

package info (click to toggle)
jsoncons 1.5.0-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 18,276 kB
  • sloc: cpp: 143,266; sh: 34; makefile: 8
file content (48 lines) | stat: -rw-r--r-- 2,662 bytes parent folder | download | duplicates (2)
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&lt;*,*&gt;" 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&lt;jsoncons::key_value&lt;*,*&gt;,*&gt;">
		<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&lt;*&gt;">
		<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_-&gt;p_,s}</DisplayString>
		<DisplayString Condition="common_stor_.storage_kind_ == json_storage_kind::byte_str">{byte_string_stor_.ptr_-&gt;p_,s}</DisplayString>
		<DisplayString Condition="common_stor_.storage_kind_ == json_storage_kind::array">{array_stor_.ptr_-&gt;elements_}</DisplayString>
		<Expand>
			<ArrayItems Condition="common_stor_.storage_kind_ == json_storage_kind::array">
				<Size>array_stor_.ptr_-&gt;elements_._Mypair._Myval2._Mylast - array_stor_.ptr_-&gt;elements_._Mypair._Myval2._Myfirst</Size>
				<ValuePointer>array_stor_.ptr_-&gt;elements_._Mypair._Myval2._Myfirst</ValuePointer>
			</ArrayItems>
			<ExpandedItem Condition="common_stor_.storage_kind_ == json_storage_kind::object">object_stor_.ptr_->members_</ExpandedItem>
		</Expand>
	</Type>

</AutoVisualizer>