summaryrefslogtreecommitdiff
path: root/source/core/core.natvis
blob: b856d31db32885c09fa457726820d70af53213b2 (plain)
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
<?xml version="1.0" encoding="utf-8"?>

<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">

<Type Name="CoreLib::Basic::String">
    <DisplayString>{buffer.pointer,s}</DisplayString>
	<StringView>buffer.pointer,s</StringView>
</Type>

<Type Name="CoreLib::Basic::ArrayView&lt;*&gt;">
  <DisplayString>{{ size={_count} }}</DisplayString>
  <Expand>
    <Item Name="[size]">_count</Item>
    <ArrayItems>
      <Size>_count</Size>
      <ValuePointer>_buffer</ValuePointer>
    </ArrayItems>
  </Expand>
</Type>

<Type Name="CoreLib::Basic::List&lt;*&gt;">
    <DisplayString>{{ size={_count} }}</DisplayString>
    <Expand>
        <Item Name="[size]">_count</Item>
        <Item Name="[capacity]">bufferSize</Item>
        <ArrayItems>
            <Size>_count</Size>
            <ValuePointer>buffer</ValuePointer>
        </ArrayItems>
    </Expand>
</Type>


<Type Name="CoreLib::Basic::Array&lt;*,*&gt;">
  <DisplayString>{{ size={_count} }}</DisplayString>
  <Expand>
    <Item Name="[size]">_count</Item>
    <ArrayItems>
      <Size>_count</Size>
      <ValuePointer>_buffer</ValuePointer>
    </ArrayItems>
  </Expand>
</Type>
  
<Type Name="CoreLib::Basic::LinkedList&lt;*&gt;">
    <DisplayString>{{ size={FCount} }}</DisplayString>
    <Expand>
        <LinkedListItems>
            <Size>FCount</Size>
            <HeadPointer>FHead</HeadPointer>
            <NextPointer>pNext</NextPointer>
            <ValueNode>Value</ValueNode>
        </LinkedListItems>
    </Expand>
</Type>

<Type Name="CoreLib::Basic::Dictionary&lt;*,*&gt;">
    <DisplayString>{{ size={_count} }}</DisplayString>
    <Expand>
        <Item Name="[size]">_count</Item>
        <Item Name="[capacity]">bucketSizeMinusOne + 1</Item>
        <ArrayItems>
           <Size>bucketSizeMinusOne + 1</Size>
           <ValuePointer>hashMap</ValuePointer>
        </ArrayItems>
    </Expand>
</Type>

<Type Name="CoreLib::Basic::EnumerableDictionary&lt;*,*&gt;">
    <DisplayString>{{ size={_count} }}</DisplayString>
    <Expand>
        <Item Name="[size]">_count</Item>
        <Item Name="[capacity]">bucketSizeMinusOne + 1</Item>
        <LinkedListItems>
            <Size>kvPairs.FCount</Size>
            <HeadPointer>kvPairs.FHead</HeadPointer>
            <NextPointer>pNext</NextPointer>
            <ValueNode>Value</ValueNode>
        </LinkedListItems>
    </Expand>
</Type>

<Type Name="CoreLib::Basic::EnumerableHashSet&lt;*,*&gt;">
    <DisplayString>{{ size={dict._count} }}</DisplayString>
    <Expand>
        <Item Name="[size]">dict._count</Item>
        <Item Name="[capacity]">dict.bucketSizeMinusOne + 1</Item>
        <LinkedListItems>
            <Size>dict.kvPairs.FCount</Size>
            <HeadPointer>dict.kvPairs.FHead</HeadPointer>
            <NextPointer>pNext</NextPointer>
            <ValueNode>Value</ValueNode>
        </LinkedListItems>
    </Expand>
</Type>

<Type Name="CoreLib::Basic::RefPtrImpl&lt;*,*,*&gt;">
    <SmartPointer Usage="Minimal">pointer</SmartPointer>
    <DisplayString Condition="pointer == 0">empty</DisplayString>
    <DisplayString Condition="pointer != 0">RefPtr {*pointer}</DisplayString>
    <Expand>
      <ExpandedItem>pointer</ExpandedItem>
    </Expand>
</Type>
</AutoVisualizer>