]> git.proxmox.com Git - rustc.git/blob - src/etc/natvis/intrinsic.natvis
New upstream version 1.54.0+dfsg1
[rustc.git] / src / etc / natvis / intrinsic.natvis
1 <?xml version="1.0" encoding="utf-8"?>
2 <AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
3 <Type Name="str">
4 <DisplayString>{data_ptr,[length]s8}</DisplayString>
5 <StringView>data_ptr,[length]s8</StringView>
6 <Expand>
7 <Item Name="[len]" ExcludeView="simple">length</Item>
8 <Synthetic Name="[chars]">
9 <Expand>
10 <ArrayItems>
11 <Size>length</Size>
12 <ValuePointer>data_ptr</ValuePointer>
13 </ArrayItems>
14 </Expand>
15 </Synthetic>
16 </Expand>
17 </Type>
18 <Type Name="slice&lt;*&gt;">
19 <DisplayString>{{ len={length} }}</DisplayString>
20 <Expand>
21 <Item Name="[len]" ExcludeView="simple">length</Item>
22 <ArrayItems>
23 <Size>length</Size>
24 <ValuePointer>data_ptr</ValuePointer>
25 </ArrayItems>
26 </Expand>
27 </Type>
28 <Type Name="tuple&lt;&gt;">
29 <DisplayString>()</DisplayString>
30 </Type>
31 <Type Name="tuple&lt;*&gt;">
32 <DisplayString>({__0})</DisplayString>
33 <Expand>
34 <Item Name="[0]">__0</Item>
35 </Expand>
36 </Type>
37 <Type Name="tuple&lt;*,*&gt;">
38 <DisplayString>({__0}, {__1})</DisplayString>
39 <Expand>
40 <Item Name="[0]">__0</Item>
41 <Item Name="[1]">__1</Item>
42 </Expand>
43 </Type>
44 <Type Name="tuple&lt;*,*,*&gt;">
45 <DisplayString>({__0}, {__1}, {__2})</DisplayString>
46 <Expand>
47 <Item Name="[0]">__0</Item>
48 <Item Name="[1]">__1</Item>
49 <Item Name="[2]">__2</Item>
50 </Expand>
51 </Type>
52 <Type Name="tuple&lt;*,*,*,*&gt;">
53 <DisplayString>({__0}, {__1}, {__2}, {__3})</DisplayString>
54 <Expand>
55 <Item Name="[0]">__0</Item>
56 <Item Name="[1]">__1</Item>
57 <Item Name="[2]">__2</Item>
58 <Item Name="[3]">__3</Item>
59 </Expand>
60 </Type>
61 <Type Name="tuple&lt;*,*,*,*,*&gt;">
62 <DisplayString>({__0}, {__1}, {__2}, {__3}, {__4})</DisplayString>
63 <Expand>
64 <Item Name="[0]">__0</Item>
65 <Item Name="[1]">__1</Item>
66 <Item Name="[2]">__2</Item>
67 <Item Name="[3]">__3</Item>
68 <Item Name="[4]">__4</Item>
69 </Expand>
70 </Type>
71 <Type Name="tuple&lt;*,*,*,*,*,*&gt;">
72 <DisplayString>({__0}, {__1}, {__2}, {__3}, {__4}, {__5})</DisplayString>
73 <Expand>
74 <Item Name="[0]">__0</Item>
75 <Item Name="[1]">__1</Item>
76 <Item Name="[2]">__2</Item>
77 <Item Name="[3]">__3</Item>
78 <Item Name="[4]">__4</Item>
79 <Item Name="[5]">__5</Item>
80 </Expand>
81 </Type>
82 <Type Name="tuple&lt;*,*,*,*,*,*,*&gt;">
83 <DisplayString>({__0}, {__1}, {__2}, {__3}, {__4}, {__5}, {__6})</DisplayString>
84 <Expand>
85 <Item Name="[0]">__0</Item>
86 <Item Name="[1]">__1</Item>
87 <Item Name="[2]">__2</Item>
88 <Item Name="[3]">__3</Item>
89 <Item Name="[4]">__4</Item>
90 <Item Name="[5]">__5</Item>
91 <Item Name="[6]">__6</Item>
92 </Expand>
93 </Type>
94 <Type Name="tuple&lt;*,*,*,*,*,*,*,*&gt;">
95 <DisplayString>({__0}, {__1}, {__2}, {__3}, {__4}, {__5}, {__6}, {__7})</DisplayString>
96 <Expand>
97 <Item Name="[0]">__0</Item>
98 <Item Name="[1]">__1</Item>
99 <Item Name="[2]">__2</Item>
100 <Item Name="[3]">__3</Item>
101 <Item Name="[4]">__4</Item>
102 <Item Name="[5]">__5</Item>
103 <Item Name="[6]">__6</Item>
104 <Item Name="[7]">__7</Item>
105 </Expand>
106 </Type>
107 <Type Name="tuple&lt;*,*,*,*,*,*,*,*,*&gt;">
108 <DisplayString>({__0}, {__1}, {__2}, {__3}, {__4}, {__5}, {__6}, {__7}, {__8})</DisplayString>
109 <Expand>
110 <Item Name="[0]">__0</Item>
111 <Item Name="[1]">__1</Item>
112 <Item Name="[2]">__2</Item>
113 <Item Name="[3]">__3</Item>
114 <Item Name="[4]">__4</Item>
115 <Item Name="[5]">__5</Item>
116 <Item Name="[6]">__6</Item>
117 <Item Name="[7]">__7</Item>
118 <Item Name="[8]">__8</Item>
119 </Expand>
120 </Type>
121 <Type Name="tuple&lt;*,*,*,*,*,*,*,*,*,*&gt;">
122 <DisplayString>({__0}, {__1}, {__2}, {__3}, {__4}, {__5}, {__6}, {__7}, {__8}, {__9})</DisplayString>
123 <Expand>
124 <Item Name="[0]">__0</Item>
125 <Item Name="[1]">__1</Item>
126 <Item Name="[2]">__2</Item>
127 <Item Name="[3]">__3</Item>
128 <Item Name="[4]">__4</Item>
129 <Item Name="[5]">__5</Item>
130 <Item Name="[6]">__6</Item>
131 <Item Name="[7]">__7</Item>
132 <Item Name="[8]">__8</Item>
133 <Item Name="[9]">__9</Item>
134 </Expand>
135 </Type>
136 <Type Name="tuple&lt;*,*,*,*,*,*,*,*,*,*,*&gt;">
137 <DisplayString>({__0}, {__1}, {__2}, {__3}, {__4}, {__5}, {__6}, {__7}, {__8}, {__9}, ...)</DisplayString>
138 <Expand>
139 <Item Name="[0]">__0</Item>
140 <Item Name="[1]">__1</Item>
141 <Item Name="[2]">__2</Item>
142 <Item Name="[3]">__3</Item>
143 <Item Name="[4]">__4</Item>
144 <Item Name="[5]">__5</Item>
145 <Item Name="[6]">__6</Item>
146 <Item Name="[7]">__7</Item>
147 <Item Name="[8]">__8</Item>
148 <Item Name="[9]">__9</Item>
149 <Synthetic Name="[...]"><DisplayString>...</DisplayString></Synthetic>
150 </Expand>
151 </Type>
152 <Type Name="enum$&lt;*&gt;">
153 <Intrinsic Name="tag" Expression="variant0.variant$" />
154 <DisplayString Condition="tag() == 0">{tag(),en}</DisplayString>
155 <DisplayString Condition="tag() == 1" Optional="true">{tag(),en}</DisplayString>
156 <DisplayString Condition="tag() == 2" Optional="true">{tag(),en}</DisplayString>
157 <DisplayString Condition="tag() == 3" Optional="true">{tag(),en}</DisplayString>
158 <DisplayString Condition="tag() == 4" Optional="true">{tag(),en}</DisplayString>
159 <DisplayString Condition="tag() == 5" Optional="true">{tag(),en}</DisplayString>
160 <DisplayString Condition="tag() == 6" Optional="true">{tag(),en}</DisplayString>
161 <DisplayString Condition="tag() == 7" Optional="true">{tag(),en}</DisplayString>
162 <DisplayString Condition="tag() == 8" Optional="true">{tag(),en}</DisplayString>
163 <DisplayString Condition="tag() == 9" Optional="true">{tag(),en}</DisplayString>
164 <DisplayString Condition="tag() == 10" Optional="true">{tag(),en}</DisplayString>
165 <DisplayString Condition="tag() == 11" Optional="true">{tag(),en}</DisplayString>
166 <DisplayString Condition="tag() == 12" Optional="true">{tag(),en}</DisplayString>
167 <DisplayString Condition="tag() == 13" Optional="true">{tag(),en}</DisplayString>
168 <DisplayString Condition="tag() == 14" Optional="true">{tag(),en}</DisplayString>
169 <DisplayString Condition="tag() == 15" Optional="true">{tag(),en}</DisplayString>
170
171 <Expand>
172 <ExpandedItem Condition="tag() == 0">variant0</ExpandedItem>
173 <ExpandedItem Condition="tag() == 1" Optional="true">variant1</ExpandedItem>
174 <ExpandedItem Condition="tag() == 2" Optional="true">variant2</ExpandedItem>
175 <ExpandedItem Condition="tag() == 3" Optional="true">variant3</ExpandedItem>
176 <ExpandedItem Condition="tag() == 4" Optional="true">variant4</ExpandedItem>
177 <ExpandedItem Condition="tag() == 5" Optional="true">variant5</ExpandedItem>
178 <ExpandedItem Condition="tag() == 6" Optional="true">variant6</ExpandedItem>
179 <ExpandedItem Condition="tag() == 7" Optional="true">variant7</ExpandedItem>
180 <ExpandedItem Condition="tag() == 8" Optional="true">variant8</ExpandedItem>
181 <ExpandedItem Condition="tag() == 9" Optional="true">variant9</ExpandedItem>
182 <ExpandedItem Condition="tag() == 10" Optional="true">variant10</ExpandedItem>
183 <ExpandedItem Condition="tag() == 11" Optional="true">variant11</ExpandedItem>
184 <ExpandedItem Condition="tag() == 12" Optional="true">variant12</ExpandedItem>
185 <ExpandedItem Condition="tag() == 13" Optional="true">variant13</ExpandedItem>
186 <ExpandedItem Condition="tag() == 14" Optional="true">variant14</ExpandedItem>
187 <ExpandedItem Condition="tag() == 15" Optional="true">variant15</ExpandedItem>
188 </Expand>
189 </Type>
190
191 <!-- $T1 is the name of the enum, $T2 is the low value of the dataful variant tag,
192 $T3 is the high value of the dataful variant tag, $T4 is the name of the dataful variant -->
193 <Type Name="enum$&lt;*, *, *, *&gt;">
194 <Intrinsic Name="tag" Expression="discriminant" />
195 <Intrinsic Name="is_dataful" Expression="tag() &gt;= $T2 &amp;&amp; tag() &lt;= $T3" />
196 <DisplayString Condition="is_dataful()">{"$T4",sb}({dataful_variant})</DisplayString>
197 <DisplayString Condition="!is_dataful()">{discriminant,en}</DisplayString>
198 <Expand>
199 <ExpandedItem Condition="is_dataful()">dataful_variant</ExpandedItem>
200 <Synthetic Condition="is_dataful()" Name="[variant]">
201 <DisplayString>{"$T4",sb}</DisplayString>
202 </Synthetic>
203 </Expand>
204 </Type>
205 </AutoVisualizer>