diff options
author | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2010-06-19 19:28:53 +0000 |
---|---|---|
committer | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2010-06-19 19:28:53 +0000 |
commit | 106caf92cdfe96aa4a113cb3075c283841346af3 (patch) | |
tree | f2625845c20d8db575ba8acafeb5fc4ca23dd6d2 /clang/lib/AST/TemplateName.cpp | |
parent | bf5c3d42ba3e67c0c10cdf09dad513adc290ff6d (diff) | |
download | bcm5719-llvm-106caf92cdfe96aa4a113cb3075c283841346af3.tar.gz bcm5719-llvm-106caf92cdfe96aa4a113cb3075c283841346af3.zip |
Initial support for writing templates to PCH.
llvm-svn: 106391
Diffstat (limited to 'clang/lib/AST/TemplateName.cpp')
-rw-r--r-- | clang/lib/AST/TemplateName.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/clang/lib/AST/TemplateName.cpp b/clang/lib/AST/TemplateName.cpp index 14722f70398..ef7b315314d 100644 --- a/clang/lib/AST/TemplateName.cpp +++ b/clang/lib/AST/TemplateName.cpp @@ -21,6 +21,17 @@ using namespace clang; using namespace llvm; +TemplateName::NameKind TemplateName::getKind() const { + if (Storage.is<TemplateDecl *>()) + return Template; + if (Storage.is<OverloadedTemplateStorage *>()) + return OverloadedTemplate; + if (Storage.is<QualifiedTemplateName *>()) + return QualifiedTemplate; + assert(Storage.is<DependentTemplateName *>() && "There's a case unhandled!"); + return DependentTemplate; +} + TemplateDecl *TemplateName::getAsTemplateDecl() const { if (TemplateDecl *Template = Storage.dyn_cast<TemplateDecl *>()) return Template; |