diff options
author | Sam McCall <sam.mccall@gmail.com> | 2018-09-18 08:40:41 +0000 |
---|---|---|
committer | Sam McCall <sam.mccall@gmail.com> | 2018-09-18 08:40:41 +0000 |
commit | 3d8051abb8ead54c2eb67a7a45193d59daf6d847 (patch) | |
tree | 670bb7e08ba884179cd9cc461aa4f86caa603145 /clang/lib/Lex/Preprocessor.cpp | |
parent | 5fefad793c10c2805671d40592ce7bcedc72cdf8 (diff) | |
download | bcm5719-llvm-3d8051abb8ead54c2eb67a7a45193d59daf6d847.tar.gz bcm5719-llvm-3d8051abb8ead54c2eb67a7a45193d59daf6d847.zip |
[CodeComplete] Add completions for filenames in #include directives.
Summary:
The dir component ("somedir" in #include <somedir/fo...>) is considered fixed.
We append "foo" to each directory on the include path, and then list its files.
Completions are of the forms:
#include <somedir/fo^
foo.h>
fox/
The filter is set to the filename part ("fo"), so fuzzy matching can be
applied to the filename only.
No fancy scoring/priorities are set, and no information is added to
CodeCompleteResult to make smart scoring possible. Could be in future.
Reviewers: ilya-biryukov
Subscribers: cfe-commits
Differential Revision: https://reviews.llvm.org/D52076
llvm-svn: 342449
Diffstat (limited to 'clang/lib/Lex/Preprocessor.cpp')
-rw-r--r-- | clang/lib/Lex/Preprocessor.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/clang/lib/Lex/Preprocessor.cpp b/clang/lib/Lex/Preprocessor.cpp index dcff51ad61b..48b3571ab27 100644 --- a/clang/lib/Lex/Preprocessor.cpp +++ b/clang/lib/Lex/Preprocessor.cpp @@ -445,6 +445,13 @@ bool Preprocessor::SetCodeCompletionPoint(const FileEntry *File, return false; } +void Preprocessor::CodeCompleteIncludedFile(llvm::StringRef Dir, + bool IsAngled) { + if (CodeComplete) + CodeComplete->CodeCompleteIncludedFile(Dir, IsAngled); + setCodeCompletionReached(); +} + void Preprocessor::CodeCompleteNaturalLanguage() { if (CodeComplete) CodeComplete->CodeCompleteNaturalLanguage(); |