diff options
author | Toni Uhlig <matzeton@googlemail.com> | 2025-06-25 12:39:04 +0200 |
---|---|---|
committer | Toni Uhlig <matzeton@googlemail.com> | 2025-06-25 12:39:04 +0200 |
commit | d9ed004d0928567ab822d2b96862c33454e2e1c7 (patch) | |
tree | 5c4a0afb789249947145e0d1fe3eceae0cea6091 /EASTL/doc | |
parent | 2083c3d97ed2946fd8168b02a2ec3f8e585ecb48 (diff) | |
parent | da5ddb55fd888d6d5ef185acdb054deac335717b (diff) |
Diffstat (limited to 'EASTL/doc')
-rw-r--r-- | EASTL/doc/EASTL.natvis | 124 |
1 files changed, 110 insertions, 14 deletions
diff --git a/EASTL/doc/EASTL.natvis b/EASTL/doc/EASTL.natvis index 2fb311b..c3e94db 100644 --- a/EASTL/doc/EASTL.natvis +++ b/EASTL/doc/EASTL.natvis @@ -70,7 +70,7 @@ <Item Name="[capacity]" Condition="!!(mPair.mFirst.sso.mRemainingSizeField.mnRemainingSize & kSSOMask)">(mPair.mFirst.heap.mnCapacity & ~kHeapMask)</Item> <Item Name="[value]" Condition="!!(mPair.mFirst.sso.mRemainingSizeField.mnRemainingSize & kSSOMask)">mPair.mFirst.heap.mpBegin,sb</Item> - <Item Name="[length]" Condition="!(mPair.mFirst.sso.mRemainingSizeField.mnRemainingSize & kSSOMask)">mPair.mFirst.sso.mRemainingSizeField.mnRemainingSize</Item> + <Item Name="[length]" Condition="!(mPair.mFirst.sso.mRemainingSizeField.mnRemainingSize & kSSOMask)">(SSOLayout::SSO_CAPACITY - mPair.mFirst.sso.mRemainingSizeField.mnRemainingSize)</Item> <Item Name="[capacity]" Condition="!(mPair.mFirst.sso.mRemainingSizeField.mnRemainingSize & kSSOMask)">SSOLayout::SSO_CAPACITY</Item> <Item Name="[value]" Condition="!(mPair.mFirst.sso.mRemainingSizeField.mnRemainingSize & kSSOMask)">mPair.mFirst.sso.mData,sb</Item> @@ -87,7 +87,7 @@ <Item Name="[capacity]" Condition="!!(mPair.mFirst.sso.mRemainingSizeField.mnRemainingSize & kSSOMask)">(mPair.mFirst.heap.mnCapacity & ~kHeapMask)</Item> <Item Name="[value]" Condition="!!(mPair.mFirst.sso.mRemainingSizeField.mnRemainingSize & kSSOMask)">mPair.mFirst.heap.mpBegin,su</Item> - <Item Name="[length]" Condition="!(mPair.mFirst.sso.mRemainingSizeField.mnRemainingSize & kSSOMask)">mPair.mFirst.sso.mRemainingSizeField.mnRemainingSize</Item> + <Item Name="[length]" Condition="!(mPair.mFirst.sso.mRemainingSizeField.mnRemainingSize & kSSOMask)">(SSOLayout::SSO_CAPACITY - mPair.mFirst.sso.mRemainingSizeField.mnRemainingSize)</Item> <Item Name="[capacity]" Condition="!(mPair.mFirst.sso.mRemainingSizeField.mnRemainingSize & kSSOMask)">SSOLayout::SSO_CAPACITY</Item> <Item Name="[value]" Condition="!(mPair.mFirst.sso.mRemainingSizeField.mnRemainingSize & kSSOMask)">mPair.mFirst.sso.mData,su</Item> @@ -392,9 +392,9 @@ <Synthetic Name="NOTE!"> <DisplayString>It is possible to expand parents that do not exist.</DisplayString> </Synthetic> - <Item Name="Parent">*(eastl::rbtree_node<$T2>*)(mpNodeParent.value & (~uintptr_t(1)))</Item> - <Item Name="Left">*(eastl::rbtree_node<$T2>*)mpNodeLeft</Item> - <Item Name="Right">*(eastl::rbtree_node<$T2>*)mpNodeRight</Item> + <Item Name="Parent">*(eastl::rbtree_node<$T1>*)mpNodeParent</Item> + <Item Name="Left">*(eastl::rbtree_node<$T1>*)mpNodeLeft</Item> + <Item Name="Right">*(eastl::rbtree_node<$T1>*)mpNodeRight</Item> </Expand> </Type> @@ -407,14 +407,29 @@ <Type Name="eastl::hashtable<*>"> - <DisplayString Condition="mnElementCount == 0">[{mnElementCount}] {{}}</DisplayString> - <DisplayString Condition="mnElementCount != 0">[{mnElementCount}] {{ ... }}</DisplayString> - <Expand> - <ArrayItems> - <Size>mnBucketCount</Size> - <ValuePointer>mpBucketArray</ValuePointer> - </ArrayItems> - </Expand> + <DisplayString Condition="mnElementCount == 0">[{mnElementCount}] {{}}</DisplayString> + <DisplayString Condition="mnElementCount != 0">[{mnElementCount}] {{ ... }}</DisplayString> + <Expand> + <ArrayItems IncludeView="detailed"> + <Size>mnBucketCount</Size> + <ValuePointer>mpBucketArray</ValuePointer> + </ArrayItems> + <CustomListItems ExcludeView="detailed"> + <Variable Name="bucketIndex" InitialValue="0"/> + <Variable Name="entry" InitialValue ="mpBucketArray[bucketIndex]"/> + <Loop> + <Item Condition="entry != nullptr">entry->mValue</Item> + <If Condition="entry != nullptr"> + <Exec>entry = entry->mpNext</Exec> + </If> + <If Condition="entry == nullptr"> + <Exec>bucketIndex++</Exec> + <Break Condition="bucketIndex == mnBucketCount"/> + <Exec>entry = mpBucketArray[bucketIndex]</Exec> + </If> + </Loop> + </CustomListItems> + </Expand> </Type> <Type Name="eastl::hash_node<*>"> @@ -629,7 +644,88 @@ </Type> -<!-- TODO eastl::tuple --> +<Type Name="eastl::tuple<>"> + <DisplayString IncludeView="noparens"></DisplayString> + <DisplayString ExcludeView="noparens">({*this,view(noparens)})</DisplayString> + <Expand/> +</Type> + +<Type Name="eastl::tuple<*>"> + <DisplayString IncludeView="noparens">{(*((eastl::Internal::TupleLeaf<0,$T1,0>*)&mImpl)).mValue}</DisplayString> + <DisplayString ExcludeView="noparens">({*this,view(noparens)})</DisplayString> + <Expand> + <Item Name="[0]">(*((eastl::Internal::TupleLeaf<0,$T1,0>*)&mImpl)).mValue</Item> + </Expand> +</Type> + +<Type Name="eastl::tuple<*,*>"> + <DisplayString IncludeView="noparens">{(*((eastl::Internal::TupleLeaf<0,$T1,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<1,$T2,0>*)&mImpl)).mValue}</DisplayString> + <DisplayString ExcludeView="noparens">({*this,view(noparens)})</DisplayString> + <Expand> + <Item Name="[0]">(*((eastl::Internal::TupleLeaf<0,$T1,0>*)&mImpl)).mValue</Item> + <Item Name="[1]">(*((eastl::Internal::TupleLeaf<1,$T2,0>*)&mImpl)).mValue</Item> + </Expand> +</Type> + +<Type Name="eastl::tuple<*,*,*>"> + <DisplayString IncludeView="noparens">{(*((eastl::Internal::TupleLeaf<0,$T1,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<1,$T2,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<2,$T3,0>*)&mImpl)).mValue}</DisplayString> + <DisplayString ExcludeView="noparens">({*this,view(noparens)})</DisplayString> + <Expand> + <Item Name="[0]">(*((eastl::Internal::TupleLeaf<0,$T1,0>*)&mImpl)).mValue</Item> + <Item Name="[1]">(*((eastl::Internal::TupleLeaf<1,$T2,0>*)&mImpl)).mValue</Item> + <Item Name="[2]">(*((eastl::Internal::TupleLeaf<2,$T3,0>*)&mImpl)).mValue</Item> + </Expand> +</Type> + +<Type Name="eastl::tuple<*,*,*,*>"> + <DisplayString IncludeView="noparens">{(*((eastl::Internal::TupleLeaf<0,$T1,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<1,$T2,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<2,$T3,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<3,$T4,0>*)&mImpl)).mValue}</DisplayString> + <DisplayString ExcludeView="noparens">({*this,view(noparens)})</DisplayString> + <Expand> + <Item Name="[0]">(*((eastl::Internal::TupleLeaf<0,$T1,0>*)&mImpl)).mValue</Item> + <Item Name="[1]">(*((eastl::Internal::TupleLeaf<1,$T2,0>*)&mImpl)).mValue</Item> + <Item Name="[2]">(*((eastl::Internal::TupleLeaf<2,$T3,0>*)&mImpl)).mValue</Item> + <Item Name="[3]">(*((eastl::Internal::TupleLeaf<3,$T4,0>*)&mImpl)).mValue</Item> + </Expand> +</Type> + +<Type Name="eastl::tuple<*,*,*,*,*>"> + <DisplayString IncludeView="noparens">{(*((eastl::Internal::TupleLeaf<0,$T1,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<1,$T2,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<2,$T3,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<3,$T4,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<4,$T5,0>*)&mImpl)).mValue}</DisplayString> + <DisplayString ExcludeView="noparens">({*this,view(noparens)})</DisplayString> + <Expand> + <Item Name="[0]">(*((eastl::Internal::TupleLeaf<0,$T1,0>*)&mImpl)).mValue</Item> + <Item Name="[1]">(*((eastl::Internal::TupleLeaf<1,$T2,0>*)&mImpl)).mValue</Item> + <Item Name="[2]">(*((eastl::Internal::TupleLeaf<2,$T3,0>*)&mImpl)).mValue</Item> + <Item Name="[3]">(*((eastl::Internal::TupleLeaf<3,$T4,0>*)&mImpl)).mValue</Item> + <Item Name="[4]">(*((eastl::Internal::TupleLeaf<4,$T5,0>*)&mImpl)).mValue</Item> + </Expand> +</Type> + +<Type Name="eastl::tuple<*,*,*,*,*,*>"> + <DisplayString IncludeView="noparens">{(*((eastl::Internal::TupleLeaf<0,$T1,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<1,$T2,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<2,$T3,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<3,$T4,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<4,$T5,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<5,$T6,0>*)&mImpl)).mValue}</DisplayString> + <DisplayString ExcludeView="noparens">({*this,view(noparens)})</DisplayString> + <Expand> + <Item Name="[0]">(*((eastl::Internal::TupleLeaf<0,$T1,0>*)&mImpl)).mValue</Item> + <Item Name="[1]">(*((eastl::Internal::TupleLeaf<1,$T2,0>*)&mImpl)).mValue</Item> + <Item Name="[2]">(*((eastl::Internal::TupleLeaf<2,$T3,0>*)&mImpl)).mValue</Item> + <Item Name="[3]">(*((eastl::Internal::TupleLeaf<3,$T4,0>*)&mImpl)).mValue</Item> + <Item Name="[4]">(*((eastl::Internal::TupleLeaf<4,$T5,0>*)&mImpl)).mValue</Item> + <Item Name="[5]">(*((eastl::Internal::TupleLeaf<5,$T6,0>*)&mImpl)).mValue</Item> + </Expand> +</Type> + +<Type Name="eastl::tuple<*,*,*,*,*,*,*>"> + <DisplayString IncludeView="noparens">{(*((eastl::Internal::TupleLeaf<0,$T1,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<1,$T2,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<2,$T3,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<3,$T4,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<4,$T5,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<5,$T6,0>*)&mImpl)).mValue}, {(*((eastl::Internal::TupleLeaf<6,$T7,0>*)&mImpl)).mValue}</DisplayString> + <DisplayString ExcludeView="noparens">({*this,view(noparens)})</DisplayString> + <Expand> + <Item Name="[0]">(*((eastl::Internal::TupleLeaf<0,$T1,0>*)&mImpl)).mValue</Item> + <Item Name="[1]">(*((eastl::Internal::TupleLeaf<1,$T2,0>*)&mImpl)).mValue</Item> + <Item Name="[2]">(*((eastl::Internal::TupleLeaf<2,$T3,0>*)&mImpl)).mValue</Item> + <Item Name="[3]">(*((eastl::Internal::TupleLeaf<3,$T4,0>*)&mImpl)).mValue</Item> + <Item Name="[4]">(*((eastl::Internal::TupleLeaf<4,$T5,0>*)&mImpl)).mValue</Item> + <Item Name="[5]">(*((eastl::Internal::TupleLeaf<5,$T6,0>*)&mImpl)).mValue</Item> + <Item Name="[6]">(*((eastl::Internal::TupleLeaf<6,$T7,0>*)&mImpl)).mValue</Item> + </Expand> +</Type> </AutoVisualizer> |