10 #include "clang/Lex/Token.h"
19 : Inserter(Inserter) {}
23 const Token &IncludeToken, StringRef FileNameRef,
24 bool IsAngled, CharSourceRange FileNameRange,
26 StringRef , StringRef ,
28 SrcMgr::CharacteristicKind )
override {
29 Inserter->AddInclude(FileNameRef,
IsAngled, HashLocation,
30 IncludeToken.getEndLoc());
38 const LangOptions &LangOpts,
45 return std::make_unique<IncludeInserterCallback>(
this);
51 std::unique_ptr<IncludeSorter> &
Entry = IncludeSorterByFile[FileID];
54 Entry = std::make_unique<IncludeSorter>(
56 SourceMgr.getFilename(SourceMgr.getLocForStartOfFile(FileID)), Style);
61 llvm::Optional<FixItHint>
66 if (!InsertedHeaders[FileID].insert(std::string(Header)).second)
73 SourceLocation HashLocation,
74 SourceLocation EndLocation) {
75 FileID FileID = SourceMgr.getFileID(HashLocation);