llvm::cas::CASID

Unique identifier for a CAS object.

Synopsis

Declared in <llvm/CAS/CASID.h>

class CASID;

Description

Locally, stores an internal CAS identifier that's specific to a single CAS instance. It's guaranteed not to change across the view of that CAS, but might change between runs.

It also has CASIDContext pointer to allow comparison of these identifiers. If two CASIDs are from the same CASIDContext, they can be compared directly. If they are, then CASIDContext::getHashSchemaIdentifier() is compared to see if they can be compared by hash, in which case the result of getHash() is compared.

Member Functions

NameDescription
CASID [constructor] [deleted]CASID cannot be default-constructed.
dump Dump this CASID to the debug stream.
getContext Return the CAS context that owns this identifier.
getHash Return the raw hash bytes for this identifier.
print Print CASID.
toString Return a printable string for CASID.

Static Member Functions

NameDescription
create Create CASID from CASContext and raw hash bytes.
getDenseMapTombstoneKey DenseMap tombstone sentinel key for CASID.

Friends

NameDescription
llvm::cas::hash_valueHash a CASID from its raw hash bytes for use in DenseMap and similar.
llvm::cas::operator!=Compare two CAS identifiers for inequality.
llvm::cas::operator==Compare two CAS identifiers for equality.
llvm::cas::operator<<Print ID to OS.