clang 18.0.0git
Public Member Functions | Public Attributes | List of all members
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 49 of file ModuleDepCollector.h.

Member Function Documentation

◆ operator<()

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

Definition at line 69 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 64 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 62 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 52 of file ModuleDepCollector.h.

Referenced by operator<(), and operator==().


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