<?xml version="1.0" encoding="utf-8"?>
<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
  <Type Name="core::ptr::Unique&lt;*&gt;">
    <DisplayString>{{ Unique {pointer} }}</DisplayString>
    <Expand>
      <Item Name="[ptr]">pointer</Item>
    </Expand>
  </Type>

  <Type Name="core::ptr::Shared&lt;*&gt;">
    <DisplayString>{{ Shared {pointer} }}</DisplayString>
    <Expand>
      <Item Name="[ptr]">pointer</Item>
    </Expand>
  </Type>

  <Type Name="core::option::Option&lt;*&gt;" Priority="MediumLow">
    <DisplayString Condition="*(void**)this == nullptr">None</DisplayString>
    <DisplayString>Some({($T1 *)this})</DisplayString>
    <Expand>
      <Item Name="Some" ExcludeView="simple" Condition="*(void**)this != nullptr">($T1 *)this</Item>
    </Expand>
  </Type>

  <Type Name="core::ptr::non_null::NonNull&lt;*&gt;">
    <DisplayString>{(void*) pointer}</DisplayString>
    <Expand>
      <Item Name="[value]">*pointer</Item>
    </Expand>
  </Type>
</AutoVisualizer>