blob: 107af502f7d049ef08d49b511defc5bf44f24b8e [file] [log] [blame]
Stephen Hines651f13c2014-04-23 16:59:28 -07001<?xml version="1.0" encoding="utf-8"?>
2<!--
3Visual Studio 2012 Native Debugging Visualizers for LLVM
4
5Put this file into "%USERPROFILE%\Documents\Visual Studio 2012\Visualizers"
6or create a symbolic link so it updates automatically.
7-->
8<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
9 <Type Name="clang::IdentifierInfo">
10 <DisplayString Condition="Entry != 0">({((llvm::StringMapEntry&lt;clang::IdentifierInfo *&gt;*)Entry)+1,s})</DisplayString>
11 <Expand>
12 <Item Condition="Entry != 0" Name="[Identifier]">((llvm::StringMapEntry&lt;clang::IdentifierInfo *&gt;*)Entry)+1,s</Item>
13 <Item Name="Token Kind">(clang::tok::TokenKind)TokenID</Item>
14 </Expand>
15 </Type>
16 <Type Name="clang::DeclarationName">
17 <DisplayString Condition="Ptr == 0">Empty</DisplayString>
Stephen Hinesef822542014-07-21 00:47:37 -070018 <DisplayString Condition="(Ptr &amp; PtrMask) == StoredIdentifier">{{Identifier ({*(clang::IdentifierInfo *)(Ptr &amp; ~PtrMask)})}}</DisplayString>
19 <DisplayString Condition="(Ptr &amp; PtrMask) == StoredObjCZeroArgSelector">{{ObjC Zero Arg Selector (*{(clang::IdentifierInfo *)(Ptr &amp; ~PtrMask)})}}</DisplayString>
20 <DisplayString Condition="(Ptr &amp; PtrMask) == StoredObjCOneArgSelector">{{ObjC One Arg Selector (*{(clang::IdentifierInfo *)(Ptr &amp; ~PtrMask)})}}</DisplayString>
Stephen Hines651f13c2014-04-23 16:59:28 -070021 <DisplayString Condition="(Ptr &amp; PtrMask) == StoredDeclarationNameExtra">{{Extra ({(clang::DeclarationNameExtra::ExtraKind)((clang::DeclarationNameExtra *)(Ptr &amp; ~PtrMask))-&gt;ExtraKindOrNumArgs})}}</DisplayString>
22 <Expand>
Stephen Hinesef822542014-07-21 00:47:37 -070023 <Item Condition="(Ptr &amp; PtrMask) == StoredIdentifier" Name="[Identifier]">*(clang::IdentifierInfo *)(Ptr &amp; ~PtrMask)</Item>
24 <Item Condition="(Ptr &amp; PtrMask) == StoredObjCZeroArgSelector" Name="[ObjC Zero Arg Selector]">*(clang::IdentifierInfo *)(Ptr &amp; ~PtrMask)</Item>
25 <Item Condition="(Ptr &amp; PtrMask) == StoredObjCOneArgSelector" Name="[ObjC One Arg Selector]">*(clang::IdentifierInfo *)(Ptr &amp; ~PtrMask)</Item>
Stephen Hines651f13c2014-04-23 16:59:28 -070026 <Item Condition="(Ptr &amp; PtrMask) == StoredDeclarationNameExtra" Name="[Extra]">(clang::DeclarationNameExtra::ExtraKind)((clang::DeclarationNameExtra *)(Ptr &amp; ~PtrMask))-&gt;ExtraKindOrNumArgs</Item>
27 </Expand>
28 </Type>
29 <Type Name="clang::Token">
30 <DisplayString>{(clang::tok::TokenKind)Kind}</DisplayString>
31 </Type>
32 <Type Name="clang::DeclSpec">
33 <DisplayString>[{(clang::DeclSpec::SCS)StorageClassSpec}], [{(clang::TypeSpecifierType)TypeSpecType}]</DisplayString>
34 </Type>
35 <Type Name="clang::PragmaHandler">
36 <DisplayString>{Name,s}</DisplayString>
37 </Type>
38 <Type Name="clang::FileEntry">
39 <DisplayString>{Name,s}</DisplayString>
40 </Type>
41 <Type Name="clang::DirectoryEntry">
42 <DisplayString>{Name,s}</DisplayString>
43 </Type>
Stephen Hinesef822542014-07-21 00:47:37 -070044 <Type Name="clang::VarDecl::VarDeclBitfields">
45 <Expand>
46 <Item Name="StorageClass">(clang::StorageClass)SClass</Item>
47 <Item Name="ThreadStorageClass">(clang::ThreadStorageClassSpecifier)TSCSpec</Item>
48 <Item Name="InitStyle">(clang::VarDecl::InitializationStyle)InitStyle</Item>
49 </Expand>
50 </Type>
51 <Type Name="clang::VarDecl">
52 <DisplayString>{Name}</DisplayString>
53 <Expand>
54 <ExpandedItem>*(DeclaratorDecl*)this,nd</ExpandedItem>
55 <Item Name="VarDeclBits">VarDeclBits</Item>
56 <Item Name="ParmVarDeclBits">ParmVarDeclBits</Item>
57 </Expand>
58 </Type>
Stephen Hines651f13c2014-04-23 16:59:28 -070059</AutoVisualizer>