clang 23.0.0git
clang::ssaf::BuildNamespace Class Reference

Represents a single namespace in the build process. More...

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

Public Member Functions

 BuildNamespace (BuildNamespaceKind Kind, llvm::StringRef Name)
bool operator== (const BuildNamespace &Other) const
bool operator!= (const BuildNamespace &Other) const
bool operator< (const BuildNamespace &Other) const

Static Public Member Functions

static BuildNamespace makeCompilationUnit (llvm::StringRef CompilationId)
 Creates a BuildNamespace representing a compilation unit.

Friends

class EntityLinker
class SerializationFormat
class TestFixture
llvm::raw_ostream & operator<< (llvm::raw_ostream &OS, const BuildNamespace &BN)

Detailed Description

Represents a single namespace in the build process.

A BuildNamespace groups program entities, such as those belonging to a compilation unit or link unit (e.g., a shared library). Each namespace has a kind (CompilationUnit or LinkUnit) and a unique identifier name within that kind.

BuildNamespaces can be composed into NestedBuildNamespace to represent hierarchical namespace structures that model how software is constructed from its components.

Definition at line 42 of file BuildNamespace.h.

Constructor & Destructor Documentation

◆ BuildNamespace()

clang::ssaf::BuildNamespace::BuildNamespace ( BuildNamespaceKind Kind,
llvm::StringRef Name )
inline

Member Function Documentation

◆ makeCompilationUnit()

BuildNamespace clang::ssaf::BuildNamespace::makeCompilationUnit ( llvm::StringRef CompilationId)
static

Creates a BuildNamespace representing a compilation unit.

Parameters
CompilationIdThe unique identifier for the compilation unit.
Returns
A BuildNamespace with CompilationUnit kind.

Definition at line 18 of file BuildNamespace.cpp.

References BuildNamespace(), and clang::ssaf::CompilationUnit.

Referenced by clang::ssaf::NestedBuildNamespace::makeCompilationUnit().

◆ operator!=()

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

Definition at line 27 of file BuildNamespace.cpp.

References BuildNamespace(), and clang::Other.

◆ operator<()

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

Definition at line 31 of file BuildNamespace.cpp.

References BuildNamespace(), and clang::Other.

◆ operator==()

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

Definition at line 23 of file BuildNamespace.cpp.

References BuildNamespace(), and clang::Other.

◆ EntityLinker

friend class EntityLinker
friend

Definition at line 62 of file BuildNamespace.h.

References EntityLinker.

Referenced by EntityLinker.

◆ operator<<

llvm::raw_ostream & operator<< ( llvm::raw_ostream & OS,
const BuildNamespace & BN )
friend

Definition at line 61 of file BuildNamespace.cpp.

References BuildNamespace().

◆ SerializationFormat

friend class SerializationFormat
friend

Definition at line 63 of file BuildNamespace.h.

References SerializationFormat.

Referenced by SerializationFormat.

◆ TestFixture

friend class TestFixture
friend

Definition at line 64 of file BuildNamespace.h.

References BuildNamespace(), and TestFixture.

Referenced by TestFixture.


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