summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/clangd/AST.h
diff options
context:
space:
mode:
Diffstat (limited to 'clang-tools-extra/clangd/AST.h')
-rw-r--r--clang-tools-extra/clangd/AST.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/clang-tools-extra/clangd/AST.h b/clang-tools-extra/clangd/AST.h
index 7798f1feb36..e0e84a0ffb1 100644
--- a/clang-tools-extra/clangd/AST.h
+++ b/clang-tools-extra/clangd/AST.h
@@ -47,6 +47,12 @@ std::string printNamespaceScope(const DeclContext &DC);
/// "(anonymous struct)" or "(anonymous namespace)".
std::string printName(const ASTContext &Ctx, const NamedDecl &ND);
+/// Prints template arguments of a decl as written in the source code, including
+/// enclosing '<' and '>', e.g for a partial specialization like: template
+/// <typename U> struct Foo<int, U> will return '<int, U>'. Returns an empty
+/// string if decl is not a template specialization.
+std::string printTemplateSpecializationArgs(const NamedDecl &ND);
+
/// Gets the symbol ID for a declaration, if possible.
llvm::Optional<SymbolID> getSymbolID(const Decl *D);
OpenPOWER on IntegriCloud