clang 22.0.0git
clang::tooling::dependencies::ModuleID Struct Reference

This is used to identify a specific module. More...

#include "clang/Tooling/DependencyScanning/ModuleDepCollector.h"

Public Member Functions

bool operator== (const ModuleID &Other) const
bool operator< (const ModuleID &Other) const

Public Attributes

std::string ModuleName
 The name of the module.
std::string ContextHash
 The context hash of a module represents the compiler options that affect the resulting command-line invocation.

Detailed Description

This is used to identify a specific module.

Definition at line 92 of file ModuleDepCollector.h.

Member Function Documentation

◆ operator<()

bool clang::tooling::dependencies::ModuleID::operator< ( const ModuleID & Other) const
inline

Definition at line 112 of file ModuleDepCollector.h.

References ContextHash, ModuleName, and clang::Other.

◆ operator==()

bool clang::tooling::dependencies::ModuleID::operator== ( const ModuleID & Other) const
inline

Definition at line 107 of file ModuleDepCollector.h.

References ContextHash, ModuleName, and clang::Other.

Member Data Documentation

◆ ContextHash

std::string clang::tooling::dependencies::ModuleID::ContextHash

The context hash of a module represents the compiler options that affect the resulting command-line invocation.

Modules with the same name and ContextHash but different invocations could cause non-deterministic build results.

Modules with the same name but a different ContextHash should be treated as separate modules for the purpose of a build.

Definition at line 105 of file ModuleDepCollector.h.

Referenced by operator<(), operator==(), and clang::tooling::dependencies::FullDependencyConsumer::takeTranslationUnitDeps().

◆ ModuleName

std::string clang::tooling::dependencies::ModuleID::ModuleName

The name of the module.

This may include : for C++20 module partitions, or a header-name for C++20 header units.

Definition at line 95 of file ModuleDepCollector.h.

Referenced by operator<(), operator==(), and clang::tooling::dependencies::FullDependencyConsumer::takeTranslationUnitDeps().


The documentation for this struct was generated from the following file: