9#ifndef LLVM_CLANG_TOOLING_INCLUSIONS_HEADERINCLUDES_H
10#define LLVM_CLANG_TOOLING_INCLUSIONS_HEADERINCLUDES_H
14#include "llvm/ADT/ArrayRef.h"
15#include "llvm/ADT/SmallVector.h"
16#include "llvm/ADT/StringMap.h"
17#include "llvm/Support/Regex.h"
22#include <unordered_map>
43 bool isMainHeader(StringRef IncludeName)
const;
79 std::optional<tooling::Replacement>
insert(llvm::StringRef Header,
138 void addExistingInclude(
Include IncludeToAdd,
unsigned NextLineOffset);
147 llvm::StringMap<std::list<Include>> ExistingIncludes;
155 std::unordered_map<int, llvm::SmallVector<const Include *, 8>>
158 int FirstIncludeOffset;
161 unsigned MinInsertOffset;
165 unsigned MaxInsertOffset;
167 bool MainIncludeFound;
170 bool ShouldInsertGlobalModuleFragmentDecl;
173 std::unordered_map<int, int> CategoryEndOffsets;
176 std::set<int> Priorities;
VerifyDiagnosticConsumer::Directive Directive
Top level wrappers for InstallAPI frontend operations.