summaryrefslogtreecommitdiffstats
path: root/source/core/core.natvis
blob: 2b1e3ff7eda75687acefe1c3b7580faef05da908 (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
106
<?xml version="1.0" encoding="utf-8"?>

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

<Type Name="Slang::String">
    <DisplayString>{((char*) (m_buffer.pointer+1)),s}</DisplayString>
	<StringView>((char*) (m_buffer.pointer+1)),s</StringView>
</Type>

<Type Name="Slang::ArrayView&lt;*&gt;">
  <DisplayString>{{ size={m_count} }}</DisplayString>
  <Expand>
    <Item Name="[size]">m_count</Item>
    <ArrayItems>
      <Size>m_count</Size>
      <ValuePointer>m_buffer</ValuePointer>
    </ArrayItems>
  </Expand>
</Type>

<Type Name="Slang::List&lt;*&gt;">
    <DisplayString>{{ size={m_count} }}</DisplayString>
    <Expand>
        <Item Name="[size]">m_count</Item>
        <Item Name="[capacity]">m_capacity</Item>
        <ArrayItems>
            <Size>m_count</Size>
            <ValuePointer>m_buffer</ValuePointer>
        </ArrayItems>
    </Expand>
</Type>


<Type Name="Slang::Array&lt;*,*&gt;">
  <DisplayString>{{ size={m_count} }}</DisplayString>
  <Expand>
    <Item Name="[size]">m_count</Item>
    <ArrayItems>
      <Size>m_count</Size>
      <ValuePointer>m_buffer</ValuePointer>
    </ArrayItems>
  </Expand>
</Type>
  
<Type Name="Slang::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="Slang::RefPtr&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>


<Type Name="Slang::Safe32Ptr&lt;*&gt;">
    <Expand>
        <ExpandedItem>($T1*)(m_base->m_data + m_offset)</ExpandedItem>
    </Expand>
</Type>

<Type Name="Slang::Relative32Ptr&lt;*&gt;">
    <Expand>
        <ExpandedItem>(m_offset == 0x80000000) ? nullptr : ($T1*)(((char*)this) + m_offset)</ExpandedItem>
    </Expand>
</Type>


<Type Name="Slang::Safe32Array&lt;*&gt;">
    <Expand>
        <Item Name="[count]">m_count</Item>
        <ArrayItems>
            <Size>m_count</Size>
            <ValuePointer>($T1*)(m_data.m_base->m_data + m_data.m_offset)</ValuePointer>
        </ArrayItems>
    </Expand>
</Type>


<Type Name="Slang::Relative32Array&lt;*&gt;">
    <Expand>
        <Item Name="[count]">m_count</Item>
        <ArrayItems>
            <Size>m_count</Size>
            <ValuePointer>(m_data.m_offset == 0x80000000) ? nullptr : ($T1*)(((char*)&amp;m_data) + m_data.m_offset)</ValuePointer>
        </ArrayItems>
    </Expand>
</Type>

<Type Name="Slang::RelativeString">
    <DisplayString>{(m_sizeThenContents + 1),s}</DisplayString>
    <StringView>(m_sizeThenContents + 1),s</StringView>
</Type>

</AutoVisualizer>