<Type Name="clang::AttributedType">\r
<DisplayString>{ModifiedType} Attribute={(clang::AttributedType::Kind)AttributedTypeBits.AttrKind}</DisplayString>\r
</Type>\r
+ \r
+ <!-- Unfortunately, Visual Studio has trouble seeing the PointerBitMask member PointerIntUnion, so I hardwire it to 2 bits-->\r
+ <Type Name="clang::DeclContext">\r
+ <DisplayString>{(clang::Decl::Kind)DeclKind,en}Decl</DisplayString>\r
+ <Expand>\r
+ <Item Name="DeclKind">(clang::Decl::Kind)DeclKind,en</Item>\r
+ <LinkedListItems>\r
+ <HeadPointer>FirstDecl</HeadPointer>\r
+ <NextPointer>(clang::Decl *)(NextInContextAndBits.Value & ~3)</NextPointer>\r
+ <ValueNode>*this</ValueNode>\r
+ </LinkedListItems>\r
+ </Expand>\r
+ </Type>\r
+ <Type Name="clang::FieldDecl">\r
+ <DisplayString>Field {{{*(clang::NamedDecl *)this,view(cpp)nd}}}</DisplayString>\r
+ </Type>\r
+ <Type Name="clang::CXXMethodDecl">\r
+ <DisplayString>Method {{{*(clang::NamedDecl *)this,view(cpp)nd}}}</DisplayString>\r
+ </Type>\r
+ <Type Name="clang::CXXConstructorDecl">\r
+ <DisplayString>Constructor {{{*(clang::NamedDecl *)this,view(cpp)nd}}}</DisplayString>\r
+ </Type>\r
+ <Type Name="clang::CXXDestructorDecl">\r
+ <DisplayString>Destructor {{{*(clang::NamedDecl *)this,view(cpp)nd}}}</DisplayString>\r
+ </Type>\r
<Type Name="clang::NamedDecl" >\r
<DisplayString IncludeView="cpp">{Name,view(cpp)}</DisplayString>\r
<DisplayString>{Name}</DisplayString>\r
<DisplayString Condition="TagDeclKind==clang::TagTypeKind::TTK_Union">union {Name,view(cpp)}</DisplayString>\r
<DisplayString Condition="TagDeclKind==clang::TagTypeKind::TTK_Class">class {Name,view(cpp)}</DisplayString>\r
<DisplayString Condition="TagDeclKind==clang::TagTypeKind::TTK_Enum">enum {Name,view(cpp)}</DisplayString>\r
+ <Expand>\r
+ <ExpandedItem>(clang::DeclContext *)this</ExpandedItem>\r
+ </Expand>\r
</Type>\r
<Type Name="clang::TagType">\r
<DisplayString>{*decl}</DisplayString>\r
<Item Name="TagType">*(clang::TagType *)this</Item>\r
</Expand>\r
</Type>\r
-\r
<Type Name="clang::SubstTemplateTypeParmType">\r
<DisplayString>{*Replaced,view(cpp)} <= {CanonicalType,view(cpp)}</DisplayString>\r
<Expand>\r