clang 23.0.0git
Module.h File Reference

Defines the clang::Module class, which describes a module in the source code. More...

#include "clang/Basic/DirectoryEntry.h"
#include "clang/Basic/FileEntry.h"
#include "clang/Basic/SourceLocation.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/DenseSet.h"
#include "llvm/ADT/PointerIntPair.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringMap.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/ADT/iterator_range.h"
#include <array>
#include <cassert>
#include <cstdint>
#include <ctime>
#include <iterator>
#include <optional>
#include <string>
#include <utility>
#include <variant>
#include <vector>

Go to the source code of this file.

Classes

class  clang::ModuleFileKey
 Deduplication key for a loaded module file in ModuleManager. More...
class  clang::ModuleFileName
 Identifies a module file to be loaded. More...
struct  clang::ASTFileSignature
 The signature of a module, which is a hash of the AST content. More...
struct  clang::ModuleAttributes
 The set of attributes that can be attached to a module. More...
class  clang::ModuleConstructorTag
 Required to construct a Module. More...
class  clang::Module
 Describes a module or submodule. More...
struct  clang::Module::Header
 Information about a header directive as found in the module map file. More...
struct  clang::Module::DirectoryName
 Information about a directory name as found in the module map file. More...
struct  clang::Module::UnresolvedHeaderDirective
 Stored information about a header directive that was found in the module map file but has not been resolved to a file. More...
struct  clang::Module::Requirement
struct  clang::Module::UnresolvedExportDecl
 Describes an exported module that has not yet been resolved (perhaps because the module it refers to has not yet been loaded). More...
struct  clang::Module::LinkLibrary
 A library or framework to link against when an entity from this module is used. More...
struct  clang::Module::UnresolvedConflict
 An unresolved conflict with another module. More...
struct  clang::Module::Conflict
 A conflict between two modules. More...
class  clang::VisibleModuleSet
 A set of visible modules. More...
struct  llvm::DenseMapInfo< clang::ModuleFileKey >

Namespaces

namespace  llvm
 Diagnostic wrappers for TextAPI types for error reporting.
namespace  clang
 The JSON file list parser is used to communicate input to InstallAPI.

Typedefs

using clang::ModuleId = SmallVector<std::pair<std::string, SourceLocation>, 2>
 Describes the name of a module.

Detailed Description

Defines the clang::Module class, which describes a module in the source code.

Definition in file Module.h.