242 lines
8.1 KiB
XML
242 lines
8.1 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
|
|
|
|
<!-- Array<T, FixedAllocation<Capacity>> -->
|
|
<Type Name="Array<*,FixedAllocation<*>>">
|
|
<DisplayString>{{ Size={_count} Capacity={_capacity} }}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[Size]" ExcludeView="simple">_count</Item>
|
|
<Item Name="[Capacity]" ExcludeView="simple">_capacity</Item>
|
|
<ArrayItems Condition="_count <= _capacity">
|
|
<Size>_count</Size>
|
|
<ValuePointer>(Array<$T1,FixedAllocation<$T2> >::ItemType*)_allocation._data</ValuePointer>
|
|
</ArrayItems>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<!-- Array<T, InlinedAllocation<Capacity>> -->
|
|
<Type Name="Array<*,InlinedAllocation<*>>">
|
|
<DisplayString>{{ Size={_count} Capacity={_capacity} }}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[Size]" ExcludeView="simple">_count</Item>
|
|
<Item Name="[Capacity]" ExcludeView="simple">_capacity</Item>
|
|
<ArrayItems Condition="_count <= _capacity">
|
|
<Size>_count</Size>
|
|
<ValuePointer Condition="!_allocation._useOther">(Array<$T1,InlinedAllocation<$T2,$T3> >::ItemType*)_allocation._data</ValuePointer>
|
|
<ValuePointer Condition=" _allocation._useOther">(Array<$T1,InlinedAllocation<$T2,$T3> >::ItemType*)_allocation._other._data</ValuePointer>
|
|
</ArrayItems>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<!-- Array<T, HeapAllocation> -->
|
|
<Type Name="Array<*,*>">
|
|
<DisplayString>{{ Size={_count} Capacity={_capacity} }}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[Size]" ExcludeView="simple">_count</Item>
|
|
<Item Name="[Capacity]" ExcludeView="simple">_capacity</Item>
|
|
<ArrayItems Condition="_count <= _capacity">
|
|
<Size>_count</Size>
|
|
<ValuePointer>_allocation._data</ValuePointer>
|
|
</ArrayItems>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<!-- Dictionary<Key, Value, HeapAllocation> -->
|
|
<Type Name="Dictionary<*,*,*>">
|
|
<DisplayString>{{ Size={_elementsCount} Capacity={_size} }}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[Size]" ExcludeView="simple">_elementsCount</Item>
|
|
<Item Name="[Capacity]" ExcludeView="simple">_size</Item>
|
|
<CustomListItems MaxItemsPerView="5000" ExcludeView="Test">
|
|
<Variable Name="i" InitialValue="0" />
|
|
<Size>_elementsCount</Size>
|
|
<Loop>
|
|
<Break Condition="i == _size" />
|
|
<If Condition="_allocation._data[i]._state == 2">
|
|
<Item>_allocation._data[i]</Item>
|
|
</If>
|
|
<Exec>i++</Exec>
|
|
</Loop>
|
|
</CustomListItems>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<!-- HashSet<T, HeapAllocation> -->
|
|
<Type Name="HashSet<*>">
|
|
<DisplayString>{{ Size={_elementsCount} Capacity={_size} }}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[Size]" ExcludeView="simple">_elementsCount</Item>
|
|
<Item Name="[Capacity]" ExcludeView="simple">_size</Item>
|
|
<CustomListItems MaxItemsPerView="5000" ExcludeView="Test">
|
|
<Variable Name="i" InitialValue="0" />
|
|
<Size>_elementsCount</Size>
|
|
<Loop>
|
|
<Break Condition="i == _size" />
|
|
<If Condition="_allocation._data[i]._state == 2">
|
|
<Item>_allocation._data[i].Item</Item>
|
|
</If>
|
|
<Exec>i++</Exec>
|
|
</Loop>
|
|
</CustomListItems>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<!-- String -->
|
|
<Type Name="String">
|
|
<DisplayString Condition="_length == 0">Empty</DisplayString>
|
|
<DisplayString Condition="_length < 0">Invalid</DisplayString>
|
|
<DisplayString>{_data,su}</DisplayString>
|
|
<StringView>_data</StringView>
|
|
<Expand>
|
|
<Item Name="[Length]" ExcludeView="simple">_length</Item>
|
|
<ArrayItems>
|
|
<Size>_length</Size>
|
|
<ValuePointer>_data</ValuePointer>
|
|
</ArrayItems>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<!-- StringView -->
|
|
<Type Name="StringView">
|
|
<DisplayString Condition="_length == 0">Empty</DisplayString>
|
|
<DisplayString Condition="_length < 0">Invalid</DisplayString>
|
|
<DisplayString>{_data,[_length]su}</DisplayString>
|
|
<StringView>_data</StringView>
|
|
<Expand>
|
|
<Item Name="[Length]" ExcludeView="simple">_length</Item>
|
|
<ArrayItems>
|
|
<Size>_length</Size>
|
|
<ValuePointer>_data</ValuePointer>
|
|
</ArrayItems>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<!-- StringAnsi -->
|
|
<Type Name="StringAnsi">
|
|
<DisplayString Condition="_length == 0">Empty</DisplayString>
|
|
<DisplayString Condition="_length < 0">Invalid</DisplayString>
|
|
<DisplayString>{_data}</DisplayString>
|
|
<StringView>_data</StringView>
|
|
<Expand>
|
|
<Item Name="[Length]" ExcludeView="simple">_length</Item>
|
|
<ArrayItems>
|
|
<Size>_length</Size>
|
|
<ValuePointer>_data</ValuePointer>
|
|
</ArrayItems>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<!-- StringAnsiView -->
|
|
<Type Name="StringAnsiView">
|
|
<DisplayString Condition="_length == 0">Empty</DisplayString>
|
|
<DisplayString Condition="_length < 0">Invalid</DisplayString>
|
|
<DisplayString>{_data,[_length]}</DisplayString>
|
|
<StringView>_data</StringView>
|
|
<Expand>
|
|
<Item Name="[Length]" ExcludeView="simple">_length</Item>
|
|
<ArrayItems>
|
|
<Size>_length</Size>
|
|
<ValuePointer>_data</ValuePointer>
|
|
</ArrayItems>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<!-- StringBuilder -->
|
|
<Type Name="StringBuilder">
|
|
<DisplayString>{_data._allocation._data,[_data._count]su}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[Raw]" ExcludeView="simple">_data._allocation._data</Item>
|
|
<Item Name="[Size]" ExcludeView="simple">_data._count</Item>
|
|
<ArrayItems>
|
|
<Size>_data._count</Size>
|
|
<ValuePointer>_data._allocation._data</ValuePointer>
|
|
</ArrayItems>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<!-- Vector2/Float2/Double2/Int2 -->
|
|
<Type Name="Vector2Base<*>">
|
|
<DisplayString>{{ X={X}, Y={Y} }}</DisplayString>
|
|
</Type>
|
|
|
|
<!-- Vector3/Float3/Double3/Int3 -->
|
|
<Type Name="Vector3Base<*>">
|
|
<DisplayString>{{ X={X}, Y={Y}, Z={Z} }}</DisplayString>
|
|
</Type>
|
|
|
|
<!-- Vector4/Float4/Double4/Int4 -->
|
|
<Type Name="Vector4Base<*>">
|
|
<DisplayString>{{ X={X}, Y={Y}, Z={Z}, W={W} }}</DisplayString>
|
|
</Type>
|
|
|
|
<!-- Quaternion -->
|
|
<Type Name="Quaternion">
|
|
<DisplayString>{{ X={X}, Y={Y}, Z={Z}, W={W} }}</DisplayString>
|
|
</Type>
|
|
|
|
<!-- Rect -->
|
|
<Type Name="Rect">
|
|
<DisplayString>{{ X={Location.X}, Y={Location.Y}, Width={Size.X}, Height={Size.Y} }}</DisplayString>
|
|
</Type>
|
|
|
|
<!-- Transform -->
|
|
<Type Name="Transform">
|
|
<DisplayString>{{ Translation={Translation}, Orientation={Orientation}, Scale={Scale} }}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[Translation]" ExcludeView="simple" >Translation</Item>
|
|
<Item Name="[Orientation]" ExcludeView="simple">Orientation</Item>
|
|
<Item Name="[Scale]" ExcludeView="simple">Scale</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<!-- Nullable<T> -->
|
|
<Type Name="Nullable<*>">
|
|
<DisplayString Condition="_hasValue == false">Not Set</DisplayString>
|
|
<DisplayString>Value={_value}</DisplayString>
|
|
</Type>
|
|
|
|
<!-- Guid -->
|
|
<Type Name="Guid">
|
|
<DisplayString>{A,hb}{B,hb}{C,hb}{D,hb}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[A]" ExcludeView="simple" >A</Item>
|
|
<Item Name="[B]" ExcludeView="simple" >B</Item>
|
|
<Item Name="[C]" ExcludeView="simple" >C</Item>
|
|
<Item Name="[D]" ExcludeView="simple" >D</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<!-- ScriptingTypeHandle -->
|
|
<Type Name="ScriptingTypeHandle">
|
|
<DisplayString Condition="Module == 0">Null</DisplayString>
|
|
<DisplayString Condition="Module != 0">Type={Module->Types._allocation._data[TypeIndex].Fullname}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[Type]" ExcludeView="simple">Module->Types._allocation._data[TypeIndex]</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<!-- ScriptingType -->
|
|
<Type Name="ScriptingType">
|
|
<DisplayString>{Fullname} ({Type})</DisplayString>
|
|
</Type>
|
|
|
|
<!-- Tag -->
|
|
<Type Name="Tag">
|
|
<DisplayString Condition="Index == 0">None</DisplayString>
|
|
<DisplayString Condition="Index != 0">Tag={TagsListDebug[Index - 1]}</DisplayString>
|
|
</Type>
|
|
|
|
<!-- Span<T> -->
|
|
<Type Name="Span<*>">
|
|
<DisplayString>{{ Length={_length} }}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[Length]" ExcludeView="simple">_length</Item>
|
|
<ArrayItems Condition="_data != nullptr">
|
|
<Size>_length</Size>
|
|
<ValuePointer>_data</ValuePointer>
|
|
</ArrayItems>
|
|
</Expand>
|
|
</Type>
|
|
|
|
</AutoVisualizer>
|