summaryrefslogtreecommitdiff
path: root/include/clang/Tooling/Syntax/Tokens.h
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2019-10-23 17:52:09 +0000
committerDimitry Andric <dim@FreeBSD.org>2019-10-23 17:52:09 +0000
commit519fc96c475680de2cc49e7811dbbfadb912cbcc (patch)
tree310ca684459b7e9ae13c9a3b9abf308b3a634afe /include/clang/Tooling/Syntax/Tokens.h
parent2298981669bf3bd63335a4be179bc0f96823a8f4 (diff)
Notes
Diffstat (limited to 'include/clang/Tooling/Syntax/Tokens.h')
-rw-r--r--include/clang/Tooling/Syntax/Tokens.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/include/clang/Tooling/Syntax/Tokens.h b/include/clang/Tooling/Syntax/Tokens.h
index 4640ccb2d30aa..301432d3888b3 100644
--- a/include/clang/Tooling/Syntax/Tokens.h
+++ b/include/clang/Tooling/Syntax/Tokens.h
@@ -236,6 +236,16 @@ public:
/// #pragma, etc.
llvm::ArrayRef<syntax::Token> spelledTokens(FileID FID) const;
+ /// Get all tokens that expand a macro in \p FID. For the following input
+ /// #define FOO B
+ /// #define FOO2(X) int X
+ /// FOO2(XY)
+ /// int B;
+ /// FOO;
+ /// macroExpansions() returns {"FOO2", "FOO"} (from line 3 and 5
+ /// respecitvely).
+ std::vector<const syntax::Token *> macroExpansions(FileID FID) const;
+
const SourceManager &sourceManager() const { return *SourceMgr; }
std::string dumpForTests() const;