For later versions of Visual Studio, no setup is required.\r
-->\r
<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">\r
-\r
- <Type Name="llvm::SmallVectorImpl<*>">\r
+ <!-- VS2013 -->\r
+ <Type Name="llvm::SmallVectorImpl<*>" Priority="MediumLow">\r
<DisplayString Condition="(($T1*)EndX - ($T1*)BeginX) == 0">empty</DisplayString>\r
<DisplayString Condition="(($T1*)EndX - ($T1*)BeginX) != 0">{{ size={($T1*)EndX - ($T1*)BeginX} }}</DisplayString>\r
<Expand>\r
</ArrayItems>\r
</Expand>\r
</Type>\r
+ <!-- VS2015 and up -->\r
+ <Type Name="llvm::SmallVectorImpl<*>">\r
+ <DisplayString IncludeView ="elt0" Condition="(($T1*)EndX - ($T1*)BeginX) == 0"></DisplayString>\r
+ <DisplayString IncludeView ="elt0">{(($T1*)BeginX)[0]}{*this,view(elt1)}</DisplayString>\r
+ <DisplayString IncludeView ="elt1" Condition="(($T1*)EndX - ($T1*)BeginX) == 1"></DisplayString>\r
+ <DisplayString IncludeView ="elt1">, {(($T1*)BeginX)[1]}{*this,view(elt2)}</DisplayString>\r
+ <DisplayString IncludeView ="elt2" Condition="(($T1*)EndX - ($T1*)BeginX) == 2"></DisplayString>\r
+ <DisplayString IncludeView ="elt2">, {(($T1*)BeginX)[2]}{*this,view(elt3)}</DisplayString>\r
+ <DisplayString IncludeView ="elt3" Condition="(($T1*)EndX - ($T1*)BeginX) == 3"></DisplayString>\r
+ <DisplayString IncludeView ="elt3">, {(($T1*)BeginX)[2]}{*this,view(elt4)}</DisplayString>\r
+ <DisplayString IncludeView ="elt4" Condition="(($T1*)EndX - ($T1*)BeginX) == 4"></DisplayString>\r
+ <DisplayString IncludeView ="elt4">, /* {(($T1*)EndX - ($T1*)BeginX) - 4} more*/ </DisplayString>\r
+ <DisplayString Condition="(($T1*)EndX - ($T1*)BeginX) == 0">empty</DisplayString>\r
+ <DisplayString Condition="(($T1*)EndX - ($T1*)BeginX) != 0">{{{*this,view(elt0)}}}</DisplayString>\r
+ <Expand>\r
+ <Item Name="[size]">($T1*)EndX - ($T1*)BeginX</Item>\r
+ <Item Name="[capacity]">($T1*)CapacityX - ($T1*)BeginX</Item>\r
+ <ArrayItems>\r
+ <Size>($T1*)EndX - ($T1*)BeginX</Size>\r
+ <ValuePointer>($T1*)BeginX</ValuePointer>\r
+ </ArrayItems>\r
+ </Expand>\r
+ </Type>\r
<Type Name="llvm::ArrayRef<*>">\r
<DisplayString Condition="Length == 0">empty</DisplayString>\r
<DisplayString Condition="Length != 0">{{ size={Length} }}</DisplayString>\r