clang 22.0.0git
Classes | Namespaces | Typedefs | Functions
ModuleMapFile.h File Reference
#include "clang/Basic/LLVM.h"
#include "clang/Basic/Module.h"
#include "clang/Basic/SourceLocation.h"
#include "llvm/ADT/StringRef.h"
#include <optional>
#include <variant>

Go to the source code of this file.

Classes

struct  clang::modulemap::RequiresFeature
 
struct  clang::modulemap::RequiresDecl
 
struct  clang::modulemap::HeaderDecl
 
struct  clang::modulemap::UmbrellaDirDecl
 
struct  clang::modulemap::ModuleDecl
 
struct  clang::modulemap::ExcludeDecl
 
struct  clang::modulemap::ExportDecl
 
struct  clang::modulemap::ExportAsDecl
 
struct  clang::modulemap::ExternModuleDecl
 
struct  clang::modulemap::UseDecl
 
struct  clang::modulemap::LinkDecl
 
struct  clang::modulemap::ConfigMacrosDecl
 
struct  clang::modulemap::ConflictDecl
 
struct  clang::modulemap::ModuleMapFile
 Represents the parsed form of a module map file. More...
 

Namespaces

namespace  clang
 The JSON file list parser is used to communicate input to InstallAPI.
 
namespace  clang::modulemap
 

Typedefs

using clang::modulemap::Decl = std::variant< struct RequiresDecl, struct HeaderDecl, struct UmbrellaDirDecl, struct ModuleDecl, struct ExcludeDecl, struct ExportDecl, struct ExportAsDecl, struct ExternModuleDecl, struct UseDecl, struct LinkDecl, struct ConfigMacrosDecl, struct ConflictDecl >
 All declarations that can appear in a module declaration.
 
using clang::modulemap::TopLevelDecl = std::variant< ModuleDecl, ExternModuleDecl >
 

Functions

std::optional< ModuleMapFileclang::modulemap::parseModuleMap (FileID ID, clang::DirectoryEntryRef Dir, SourceManager &SM, DiagnosticsEngine &Diags, bool IsSystem, unsigned *Offset)
 Parse a module map file into an in memory representation.