]> git.proxmox.com Git - rustc.git/blobdiff - vendor/windows/windows.natvis
New upstream version 1.70.0+dfsg1
[rustc.git] / vendor / windows / windows.natvis
diff --git a/vendor/windows/windows.natvis b/vendor/windows/windows.natvis
new file mode 100644 (file)
index 0000000..85012f4
--- /dev/null
@@ -0,0 +1,84 @@
+<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
+  <Type Name="windows::core::array::Array&lt;*&gt;">
+    <DisplayString>{{ len={len} }}</DisplayString>
+
+    <Expand>
+      <Item Name="[len]">len</Item>
+      <ArrayItems>
+        <Size>len</Size>
+        <ValuePointer>data</ValuePointer>
+      </ArrayItems>
+    </Expand>
+  </Type>
+
+  <Type Name="windows::core::error::Error">
+    <Expand>
+      <ExpandedItem>code</ExpandedItem>
+      <Item Name="[info]">info</Item>
+    </Expand>
+  </Type>
+
+  <Type Name="windows::core::hresult::HRESULT">
+    <DisplayString>{(HRESULT)__0}</DisplayString>
+  </Type>
+
+  <Type Name="windows::imp::ref_count::RefCount">
+    <DisplayString>{__0}</DisplayString>
+  </Type>
+
+  <Type Name="windows::core::strings::hstring::HSTRING">
+    <Intrinsic Name="header" Expression="*((windows::core::strings::hstring::Header**)this)" ReturnType="windows::core::strings::hstring::Header *" />
+    <Intrinsic Name="is_empty" Expression="header() == nullptr" />
+    <DisplayString Condition="is_empty()">""</DisplayString>
+    <DisplayString>{((char16_t*)header()->data),[header()->len]su}</DisplayString>
+
+    <Expand>
+      <Item Name="[len]">is_empty() ? (unsigned int)0 : header()->len</Item>
+      <Item Name="[ref_count]" Condition="!is_empty()">header()->count</Item>
+      <Item Name="[flags]" Condition="!is_empty()">header()->flags</Item>
+      <Synthetic Name="[chars]" Condition="!is_empty()">
+        <Expand>
+          <ArrayItems>
+            <Size>header()->len</Size>
+            <ValuePointer>(char16_t*)header()->data</ValuePointer>
+          </ArrayItems>
+        </Expand>
+      </Synthetic>
+    </Expand>
+  </Type>
+
+  <Type Name="windows::core::strings::pstr::PSTR">
+    <AlternativeType Name="windows::core::strings::pcstr::PCSTR" />
+    <Intrinsic Name="len" Expression="strlen(((char*)__0))" />
+    <DisplayString>{(char*)__0,[len()]s8}</DisplayString>
+    <Expand>
+      <Item Name="[len]">len()</Item>
+      <Synthetic Name="[chars]">
+        <Expand>
+          <ArrayItems>
+            <Size>len()</Size>
+            <ValuePointer>(char*)__0</ValuePointer>
+          </ArrayItems>
+        </Expand>
+      </Synthetic>
+    </Expand>
+  </Type>
+
+  <Type Name="windows::core::strings::pwstr::PWSTR">
+    <AlternativeType Name="windows::core::strings::pcwstr::PCWSTR" />
+    <Intrinsic Name="len" Expression="wcslen(((WCHAR*)__0))" />
+    <DisplayString>{(char16_t*)__0,[len()]su}</DisplayString>
+
+    <Expand>
+      <Item Name="[len]">len()</Item>
+      <Synthetic Name="[chars]">
+        <Expand>
+          <ArrayItems>
+            <Size>len()</Size>
+            <ValuePointer>(char16_t*)__0</ValuePointer>
+          </ArrayItems>
+        </Expand>
+      </Synthetic>
+    </Expand>
+  </Type>
+</AutoVisualizer>