|
clang 23.0.0git
|
Identifies a module file to be loaded. More...
#include "clang/Basic/Module.h"
Public Member Functions | |
| ModuleFileName ()=default | |
| Creates an empty module file name. | |
| unsigned | getImplicitModuleSuffixLength () const |
| Returns the suffix length for an implicit module name, zero otherwise. | |
| bool | isInMemory () const |
Returns true iff this is an in-memory module file, false otherwise. | |
| unsigned | getRawKind () const |
| Returns the raw value representing the kind of the module file. | |
| StringRef | str () const |
| Returns the plain module file name. | |
| operator StringRef () const | |
| Converts to StringRef representing the plain module file name. | |
| bool | empty () const |
| Checks whether the module file name is empty. | |
Static Public Member Functions | |
| static ModuleFileName | makeFromRaw (StringRef Name, unsigned RawKind) |
| Creates a file name from the raw kind value. | |
| static ModuleFileName | makeInMemory (StringRef Name) |
| Creates a file name for an in-memory module. | |
| static ModuleFileName | makeExplicit (std::string Name) |
| Creates a file name for an explicit module. | |
| static ModuleFileName | makeExplicit (StringRef Name) |
| Creates a file name for an explicit module. | |
| static ModuleFileName | makeImplicit (std::string Name, unsigned SuffixLength) |
| Creates a file name for an implicit module. | |
| static ModuleFileName | makeImplicit (StringRef Name, unsigned SuffixLength) |
| Creates a file name for an implicit module. | |
Identifies a module file to be loaded.
For implicitly-built module files, the path is split into the module cache path and the module file name with the (optional) context hash. For all other types of module files, this is just the file system path.
|
default |
Creates an empty module file name.
Referenced by makeExplicit(), makeExplicit(), makeFromRaw(), makeImplicit(), makeImplicit(), and makeInMemory().
|
inline |
Checks whether the module file name is empty.
Definition at line 194 of file Module.h.
Referenced by selectModuleSource().
|
inline |
Returns the suffix length for an implicit module name, zero otherwise.
Definition at line 171 of file Module.h.
Referenced by clang::serialization::ModuleManager::makeKey().
|
inline |
|
inline |
Returns true iff this is an in-memory module file, false otherwise.
Definition at line 182 of file Module.h.
Referenced by clang::serialization::ModuleManager::makeKey().
|
inlinestatic |
Creates a file name for an explicit module.
Definition at line 142 of file Module.h.
References clang::File, and ModuleFileName().
Referenced by clang::FrontendAction::BeginSourceFile(), clang::CompilerInstance::createPCHExternalASTSource(), clang::VerifyPCHAction::ExecuteAction(), clang::HeaderSearch::getPrebuiltImplicitModuleFileName(), clang::HeaderSearch::getPrebuiltModuleFileName(), clang::ASTUnit::LoadFromASTFile(), makeExplicit(), and selectModuleSource().
|
inlinestatic |
Creates a file name for an explicit module.
Definition at line 150 of file Module.h.
References makeExplicit(), and ModuleFileName().
|
inlinestatic |
Creates a file name from the raw kind value.
Definition at line 126 of file Module.h.
References clang::File, and ModuleFileName().
|
inlinestatic |
Creates a file name for an implicit module.
Definition at line 155 of file Module.h.
References clang::File, and ModuleFileName().
Referenced by makeImplicit().
|
inlinestatic |
Creates a file name for an implicit module.
Definition at line 166 of file Module.h.
References makeImplicit(), and ModuleFileName().
|
inlinestatic |
Creates a file name for an in-memory module.
Definition at line 134 of file Module.h.
References clang::File, and ModuleFileName().
Referenced by createASTReader(), and clang::ASTUnit::LoadFromASTFile().
|
inline |
|
inline |
Returns the plain module file name.
Definition at line 188 of file Module.h.
Referenced by createPrebuiltModuleDep().