clang  13.0.0git
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
clang::ASTFileSignature Struct Reference

The signature of a module, which is a hash of the AST content. More...

#include "clang/Basic/Module.h"

Inheritance diagram for clang::ASTFileSignature:
Inheritance graph
[legend]
Collaboration diagram for clang::ASTFileSignature:
Collaboration graph
[legend]

Public Types

using BaseT = std::array< uint8_t, 20 >
 

Public Member Functions

 ASTFileSignature (BaseT S={{0}})
 
 operator bool () const
 
uint64_t truncatedValue () const
 Returns the value truncated to the size of an uint64_t. More...
 

Static Public Member Functions

static ASTFileSignature create (StringRef Bytes)
 
static ASTFileSignature createDISentinel ()
 
template<typename InputIt >
static ASTFileSignature create (InputIt First, InputIt Last)
 

Static Public Attributes

static constexpr size_t size = std::tuple_size<BaseT>::value
 

Detailed Description

The signature of a module, which is a hash of the AST content.

Definition at line 56 of file Module.h.

Member Typedef Documentation

◆ BaseT

using clang::ASTFileSignature::BaseT = std::array<uint8_t, 20>

Definition at line 57 of file Module.h.

Constructor & Destructor Documentation

◆ ASTFileSignature()

clang::ASTFileSignature::ASTFileSignature ( BaseT  S = {{0}})
inline

Definition at line 61 of file Module.h.

Member Function Documentation

◆ create() [1/2]

template<typename InputIt >
static ASTFileSignature clang::ASTFileSignature::create ( InputIt  First,
InputIt  Last 
)
inlinestatic

Definition at line 85 of file Module.h.

References distance(), clang::First, clang::Last, and size.

◆ create() [2/2]

static ASTFileSignature clang::ASTFileSignature::create ( StringRef  Bytes)
inlinestatic

Definition at line 74 of file Module.h.

Referenced by readASTFileSignature().

◆ createDISentinel()

static ASTFileSignature clang::ASTFileSignature::createDISentinel ( )
inlinestatic

Definition at line 78 of file Module.h.

◆ operator bool()

clang::ASTFileSignature::operator bool ( ) const
inlineexplicit

Definition at line 63 of file Module.h.

◆ truncatedValue()

uint64_t clang::ASTFileSignature::truncatedValue ( ) const
inline

Returns the value truncated to the size of an uint64_t.

Definition at line 66 of file Module.h.

Member Data Documentation

◆ size

constexpr size_t clang::ASTFileSignature::size = std::tuple_size<BaseT>::value
staticconstexpr

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