onnxruntime/cmake/external/abseil-cpp.natvis
Changming Sun fc2a6db573
Update absl to the latest release (#13990)
### Description
Update absl to a new version

### Motivation and Context
The new version contains fixes that are needed for Nvidia GPU build.
Once we update it to that version, we don't need to maintain our private
patches for Nvidia GPU build.
2022-12-19 14:25:13 -08:00

54 lines
2.6 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
<Type Name="absl::lts_20220623::InlinedVector&lt;*&gt;">
<Intrinsic Name="_size" Expression="storage_.metadata_.value >> 1"/>
<Intrinsic Name="_is_allocated" Expression="(storage_.metadata_.value &amp; 1) == 1"/>
<Intrinsic Name="_inlined_data" Expression="($T1*)storage_.data_.inlined.inlined_data"/>
<Intrinsic Name="_allocated_data" Expression="storage_.data_.allocated.allocated_data"/>
<DisplayString>{{ size={ _size() }}}</DisplayString>
<Expand>
<Item Name="[capacity]" ExcludeView="simple" Condition="!_is_allocated()">$T2</Item>
<Item Name="[capacity]" ExcludeView="simple" Condition="_is_allocated()">storage_.data_.allocated.allocated_capacity</Item>
<Item Name="[N]" ExcludeView="simple">$T2</Item>
<Item Name="[size]" ExcludeView="simple">_size()</Item>
<Item Name="[is_allocated]" ExcludeView="simple">_is_allocated()</Item>
<Item Name="[allocator]" ExcludeView="simple" Condition="_is_allocated()">storage_.metadata_</Item>
<IndexListItems Condition="!_is_allocated()">
<Size>_size()</Size>
<ValueNode>_inlined_data()[$i]</ValueNode>
</IndexListItems>
<IndexListItems Condition="_is_allocated()">
<Size>_size()</Size>
<ValueNode>_allocated_data()[$i]</ValueNode>
</IndexListItems>
</Expand>
</Type>
<!-- Should handle both flat hash_set and hash_map -->
<Type Name="absl::lts_20220623::container_internal::raw_hash_set&lt;*&gt;">
<DisplayString Condition="size_ == 0">empty</DisplayString>
<DisplayString>{{ size={size_} }}</DisplayString>
<Expand>
<Item Name="[size]" ExcludeView="simple">size_</Item>
<Item Name="[capacity]" ExcludeView="simple">capacity_</Item>
<CustomListItems MaxItemsPerView="5000">
<Variable Name="nslot" InitialValue="0" />
<Size>size_</Size>
<Loop>
<!-- bool IsFull(ctrl_t c) const { return c >= 0; } -->
<If Condition="ctrl_[nslot] &gt;= 0">
<Item>slots_[nslot]</Item>
</If>
<Exec>nslot++</Exec>
<Break Condition="nslot == capacity_" />
</Loop>
</CustomListItems>
</Expand>
</Type>
<Type Name="absl::lts_20220623::container_internal::map_slot_type&lt;*&gt;">
<DisplayString>{{ {value.first}:{value.second} }}</DisplayString>
<Expand>
<Item Name="[key]" ExcludeView="simple">value.first</Item>
<Item Name="[value]" ExcludeView="simple">value.second</Item>
</Expand>
</Type>
</AutoVisualizer>