summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/pugixml/scripts/natvis/pugixml.natvis
blob: b756763b778606f56b59b8baa523693f2edfcea4 (plain) (blame)
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
<?xml version="1.0" encoding="utf-8"?>
<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
  <Type Name="pugi::xml_node">
    <DisplayString Condition="_root">{_root}</DisplayString>
    <DisplayString Condition="!_root">none</DisplayString>
    <Expand>
      <ExpandedItem Condition="_root">_root</ExpandedItem>
    </Expand>
  </Type>
  
  <Type Name="pugi::xml_node_struct">
    <DisplayString Condition="name &amp;&amp; value">{(pugi::xml_node_type)(header &amp; 0xf),en} name={name,na} value={value,na}</DisplayString>
    <DisplayString Condition="name">{(pugi::xml_node_type)(header &amp; 0xf),en} name={name,na}</DisplayString>
    <DisplayString Condition="value">{(pugi::xml_node_type)(header &amp; 0xf),en} value={value,na}</DisplayString>
    <DisplayString>{(pugi::xml_node_type)(header &amp; 0xf),en}</DisplayString>
    <Expand>
      <Item Name="value" Condition="value">value,na</Item>
      <Synthetic Name="attributes" Condition="first_attribute">
        <Expand>
          <CustomListItems>
            <Variable Name="curr" InitialValue="first_attribute" />

            <Loop Condition="curr">
              <Item Name="{curr->name,na}">curr,view(child)na</Item>
              <Exec>curr = curr->next_attribute</Exec>
            </Loop>
          </CustomListItems>
        </Expand>
      </Synthetic>
      <LinkedListItems>
        <HeadPointer>first_child</HeadPointer>
        <NextPointer>next_sibling</NextPointer>
        <ValueNode>this,na</ValueNode>
      </LinkedListItems>
    </Expand>
  </Type>
  
  <Type Name="pugi::xml_attribute">
    <DisplayString Condition="_attr">{_attr}</DisplayString>
    <DisplayString Condition="!_attr">none</DisplayString>
    <Expand>
      <ExpandedItem Condition="_attr">_attr</ExpandedItem>
    </Expand>
  </Type>
  
  <Type Name="pugi::xml_attribute_struct">
    <DisplayString ExcludeView="child">{name,na} = {value,na}</DisplayString>
    <DisplayString>{value,na}</DisplayString>
    <Expand>
      <Item Name="name">name,na</Item>
      <Item Name="value">value,na</Item>
    </Expand>
  </Type>
  
  <Type Name="pugi::xpath_node">
    <DisplayString Condition="_node._root &amp;&amp; _attribute._attr">{_node,na} "{_attribute._attr->name,na}"="{_attribute._attr->value,na}"</DisplayString>
    <DisplayString Condition="_node._root">{_node,na}</DisplayString>
    <DisplayString Condition="_attribute._attr">{_attribute}</DisplayString>
    <DisplayString>empty</DisplayString>
    <Expand HideRawView="1">
      <ExpandedItem Condition="_node._root &amp;&amp; !_attribute._attr">_node</ExpandedItem>
      <ExpandedItem Condition="!_node._root &amp;&amp; _attribute._attr">_attribute</ExpandedItem>
      <Item Name="node" Condition="_node._root &amp;&amp; _attribute._attr">_node,na</Item>
      <Item Name="attribute" Condition="_node._root &amp;&amp; _attribute._attr">_attribute,na</Item>
    </Expand>
  </Type>
  
  <Type Name="pugi::xpath_node_set">
    <Expand>
      <Item Name="type">_type</Item>
      <ArrayItems>
        <Size>_end - _begin</Size>
        <ValuePointer>_begin</ValuePointer>
      </ArrayItems>
    </Expand>
  </Type>
</AutoVisualizer>