summaryrefslogtreecommitdiff
path: root/source/slang/slang.natvis
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2018-01-13 13:17:02 -0800
committerGitHub <noreply@github.com>2018-01-13 13:17:02 -0800
commitd4dab2cd3a409411c2d7caed01fc02a0fd3e8450 (patch)
tree10c92df406a82e7a5eb24b56c17d9256a7183c44 /source/slang/slang.natvis
parentdf6eeb93c1718334779ae328db277cdf7a9d7b04 (diff)
parent4d2086f47e25aa4545df95ddfd260c8bc5aafdb2 (diff)
Merge pull request #364 from csyonghe/assoctype
Support nested generics
Diffstat (limited to 'source/slang/slang.natvis')
-rw-r--r--source/slang/slang.natvis42
1 files changed, 40 insertions, 2 deletions
diff --git a/source/slang/slang.natvis b/source/slang/slang.natvis
index d58e733fa..93979f473 100644
--- a/source/slang/slang.natvis
+++ b/source/slang/slang.natvis
@@ -12,23 +12,59 @@
<Type Name="Slang::DeclRef&lt;*&gt;">
<SmartPointer Usage="Minimal">decl ? ($T1*)(decl) : ($T1*)0</SmartPointer>
<DisplayString Condition="decl == 0">DeclRef nullptr</DisplayString>
- <DisplayString Condition="decl != 0">DeclRef {(*(*(Slang::DeclRefBase*)this).decl).nameAndLoc}</DisplayString>
+ <DisplayString Condition="decl != 0">{(*(*(Slang::DeclRefBase*)this).decl).nameAndLoc}</DisplayString>
<Expand>
<ExpandedItem>decl ? ($T1*)(decl) : ($T1*)0</ExpandedItem>
<Item Name="[Substitutions]:">"========================="</Item>
<LinkedListItems>
- <HeadPointer>substitutions.pointer</HeadPointer>
+ <HeadPointer>substitutions.genericSubstitutions.pointer</HeadPointer>
<NextPointer>outer.pointer</NextPointer>
<ValueNode>this</ValueNode>
</LinkedListItems>
+ <LinkedListItems>
+ <HeadPointer>substitutions.globalGenParamSubstitutions.pointer</HeadPointer>
+ <NextPointer>outer.pointer</NextPointer>
+ <ValueNode>this</ValueNode>
+ </LinkedListItems>
+ <Item Name ="thisSubst">substitutions.thisTypeSubstitution</Item>
</Expand>
</Type>
+ <Type Name="Slang::DeclRefBase">
+ <SmartPointer Usage="Minimal">decl</SmartPointer>
+ <DisplayString Condition="decl == 0">DeclRefBase nullptr</DisplayString>
+ <DisplayString Condition="decl != 0">{(*(*(Slang::DeclRefBase*)this).decl).nameAndLoc}</DisplayString>
+ <Expand>
+ <ExpandedItem>decl</ExpandedItem>
+ <Item Name="[Substitutions]:">"========================="</Item>
+ <LinkedListItems>
+ <HeadPointer>substitutions.genericSubstitutions.pointer</HeadPointer>
+ <NextPointer>outer.pointer</NextPointer>
+ <ValueNode>this</ValueNode>
+ </LinkedListItems>
+ <LinkedListItems>
+ <HeadPointer>substitutions.globalGenParamSubstitutions.pointer</HeadPointer>
+ <NextPointer>outer.pointer</NextPointer>
+ <ValueNode>this</ValueNode>
+ </LinkedListItems>
+ <Item Name ="thisSubst">substitutions.thisTypeSubstitution</Item>
+ </Expand>
+ </Type>
+ <Type Name="Slang::GenericSubstitution">
+ <DisplayString>GenSubst {(*genericDecl).nameAndLoc}</DisplayString>
+ <Expand>
+ <Item Name="genericDecl">genericDecl</Item>
+ <ExpandedItem>args</ExpandedItem>
+ </Expand>
+ </Type>
<Type Name="Slang::DeclRefType">
<DisplayString>DeclRefType {declRef}</DisplayString>
<Expand>
<ExpandedItem>declRef</ExpandedItem>
</Expand>
</Type>
+ <Type Name="Slang::FuncDecl">
+ <DisplayString>FuncDecl {nameAndLoc}</DisplayString>
+ </Type>
<Type Name="Slang::Name">
<DisplayString>{{name={(char*)(text.buffer.pointer+1), s}}}</DisplayString>
</Type>
@@ -88,6 +124,8 @@
<Item Name="[ResultType]">(*(IRFuncType*)(type.pointer)).resultType</Item>
<Item Name="[ParameterTypes]">(*(IRFuncType*)(type.pointer)).paramTypes</Item>
<Item Name="[FirstBlock]">firstBlock</Item>
+ <Item Name="[SpecLevel]">specializedGenericLevel</Item>
+ <Item Name="genericDecls">genericDecls</Item>
</Expand>
</Type>