clang 23.0.0git
clang::ssaf::EntityName Class Reference

Uniquely identifies an entity in a program. More...

#include "clang/ScalableStaticAnalysisFramework/Core/Model/EntityName.h"

Public Member Functions

 EntityName (llvm::StringRef USR, llvm::StringRef Suffix, NestedBuildNamespace Namespace)
 Client code should not use this constructor directly.
bool operator== (const EntityName &Other) const
bool operator!= (const EntityName &Other) const
bool operator< (const EntityName &Other) const
EntityName makeQualified (NestedBuildNamespace Namespace) const
 Creates a new EntityName with additional build namespace qualification.

Friends

class EntityLinker
class SerializationFormat
class TestFixture
llvm::raw_ostream & operator<< (llvm::raw_ostream &OS, const EntityName &EN)

Detailed Description

Uniquely identifies an entity in a program.

EntityName provides a globally unique identifier for program entities that remains stable across compilation boundaries. This enables whole-program analysis to track and relate entities across separately compiled translation units.

Client code should not make assumptions about the implementation details, such as USRs.

Definition at line 28 of file EntityName.h.

Constructor & Destructor Documentation

◆ EntityName()

clang::ssaf::EntityName::EntityName ( llvm::StringRef USR,
llvm::StringRef Suffix,
NestedBuildNamespace Namespace )

Client code should not use this constructor directly.

Use getEntityName and other functions in ASTEntityMapping.h to get entity names.

Definition at line 13 of file EntityName.cpp.

Referenced by makeQualified(), operator!=(), operator<(), operator<<, operator==(), and TestFixture.

Member Function Documentation

◆ makeQualified()

EntityName clang::ssaf::EntityName::makeQualified ( NestedBuildNamespace Namespace) const

Creates a new EntityName with additional build namespace qualification.

Parameters
NamespaceThe namespace steps to append to this entity's namespace.

Definition at line 29 of file EntityName.cpp.

References clang::Copy, and EntityName().

◆ operator!=()

bool clang::ssaf::EntityName::operator!= ( const EntityName & Other) const

Definition at line 21 of file EntityName.cpp.

References EntityName(), and clang::Other.

◆ operator<()

bool clang::ssaf::EntityName::operator< ( const EntityName & Other) const

Definition at line 25 of file EntityName.cpp.

References EntityName(), and clang::Other.

◆ operator==()

bool clang::ssaf::EntityName::operator== ( const EntityName & Other) const

Definition at line 17 of file EntityName.cpp.

References EntityName(), and clang::Other.

◆ EntityLinker

friend class EntityLinker
friend

Definition at line 29 of file EntityName.h.

References EntityLinker.

Referenced by EntityLinker.

◆ operator<<

llvm::raw_ostream & operator<< ( llvm::raw_ostream & OS,
const EntityName & EN )
friend

Definition at line 36 of file EntityName.cpp.

References EntityName().

◆ SerializationFormat

friend class SerializationFormat
friend

Definition at line 30 of file EntityName.h.

References SerializationFormat.

Referenced by SerializationFormat.

◆ TestFixture

friend class TestFixture
friend

Definition at line 31 of file EntityName.h.

References EntityName(), and TestFixture.

Referenced by TestFixture.


The documentation for this class was generated from the following files: