소스 검색

Add `Ref` and `HashSet` to `godot.natvis`

Mikael Hermansson 10 달 전
부모
커밋
9b7c14718b
1개의 변경된 파일20개의 추가작업 그리고 0개의 파일을 삭제
  1. 20 0
      platform/windows/godot.natvis

+ 20 - 0
platform/windows/godot.natvis

@@ -1,5 +1,15 @@
 <?xml version="1.0" encoding="utf-8"?>
 <AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
+	<Type Name="Ref&lt;*&gt;">
+		<SmartPointer Usage="Minimal">reference</SmartPointer>
+		<DisplayString Condition="!reference">[empty]</DisplayString>
+		<DisplayString Condition="!!reference">{*reference}</DisplayString>
+		<Expand>
+			<Item Condition="!!reference" Name="[ptr]">reference</Item>
+			<Item Condition="!!reference" Name="[refcount]">reference->refcount.count.value</Item>
+		</Expand>
+	</Type>
+
 	<Type Name="Vector&lt;*&gt;">
 		<Expand>
 			<Item Name="[size]">_cowdata._ptr ? (((const unsigned long long *)(_cowdata._ptr))[-1]) : 0</Item>
@@ -91,6 +101,16 @@
 		<StringView Condition="_data &amp;&amp; !_data->cname">_data->name,s32b</StringView>
 	</Type>
 
+	<Type Name="HashSet&lt;*,*,*&gt;">
+		<Expand>
+			<Item Name="[size]">num_elements</Item>
+			<ArrayItems>
+				<Size>num_elements</Size>
+				<ValuePointer>($T1 *) keys._cowdata._ptr</ValuePointer>
+			</ArrayItems>
+		</Expand>
+	</Type>
+
 	<Type Name="HashMapElement&lt;*,*&gt;">
 		<DisplayString>{{Key = {($T1 *) &amp;data.key}  Value = {($T2 *) &amp;data.value}}}</DisplayString>
 		<Expand>