class IncludeCategoryManager
Declaration
class IncludeCategoryManager { /* full declaration omitted */ };
Description
This class manages priorities of C++ #include categories and calculates priorities for headers. FIXME(ioeric): move this class into implementation file when clang-format's include sorting functions are also moved here.
Declared at: clang/include/clang/Tooling/Inclusions/HeaderIncludes.h:27
Member Variables
- private const clang::tooling::IncludeStyle Style
- private bool IsMainFile
- private std::string FileName
- private SmallVector<llvm::Regex, 4> CategoryRegexs
Method Overview
- public IncludeCategoryManager(const clang::tooling::IncludeStyle & Style, llvm::StringRef FileName)
- public int getIncludePriority(llvm::StringRef IncludeName, bool CheckMainHeader) const
- public int getSortIncludePriority(llvm::StringRef IncludeName, bool CheckMainHeader) const
- private bool isMainHeader(llvm::StringRef IncludeName) const
Methods
¶IncludeCategoryManager(
const clang::tooling::IncludeStyle& Style,
llvm::StringRef FileName)
IncludeCategoryManager(
const clang::tooling::IncludeStyle& Style,
llvm::StringRef FileName)
Declared at: clang/include/clang/Tooling/Inclusions/HeaderIncludes.h:29
Parameters
- const clang::tooling::IncludeStyle& Style
- llvm::StringRef FileName
¶int getIncludePriority(
llvm::StringRef IncludeName,
bool CheckMainHeader) const
int getIncludePriority(
llvm::StringRef IncludeName,
bool CheckMainHeader) const
Description
Returns the priority of the category which \p IncludeName belongs to. If \p CheckMainHeader is true and \p IncludeName is a main header, returns 0. Otherwise, returns the priority of the matching category or INT_MAX. NOTE: this API is not thread-safe!
Declared at: clang/include/clang/Tooling/Inclusions/HeaderIncludes.h:35
Parameters
- llvm::StringRef IncludeName
- bool CheckMainHeader
¶int getSortIncludePriority(
llvm::StringRef IncludeName,
bool CheckMainHeader) const
int getSortIncludePriority(
llvm::StringRef IncludeName,
bool CheckMainHeader) const
Declared at: clang/include/clang/Tooling/Inclusions/HeaderIncludes.h:36
Parameters
- llvm::StringRef IncludeName
- bool CheckMainHeader
¶bool isMainHeader(
llvm::StringRef IncludeName) const
bool isMainHeader(
llvm::StringRef IncludeName) const
Declared at: clang/include/clang/Tooling/Inclusions/HeaderIncludes.h:39
Parameters
- llvm::StringRef IncludeName