LLVM 22.0.0git
llvm::MDOperand Class Reference

Tracking metadata reference owned by Metadata. More...

#include "llvm/IR/Metadata.h"

Public Member Functions

 MDOperand ()=default
 MDOperand (const MDOperand &)=delete
 MDOperand (MDOperand &&Op)
MDOperandoperator= (const MDOperand &)=delete
MDOperandoperator= (MDOperand &&Op)
bool equalsStr (StringRef Str) const
 ~MDOperand ()
Metadataget () const
 operator Metadata * () const
Metadataoperator-> () const
Metadataoperator* () const
void reset ()
void reset (Metadata *MD, Metadata *Owner)

Detailed Description

Tracking metadata reference owned by Metadata.

Similar to TrackingMDRef, but it's expected to be owned by an instance of Metadata, which has the option of registering itself for callbacks to re-unique itself.

In particular, this is used by MDNode.

Definition at line 900 of file Metadata.h.

Constructor & Destructor Documentation

◆ MDOperand() [1/3]

llvm::MDOperand::MDOperand ( )
default

◆ MDOperand() [2/3]

llvm::MDOperand::MDOperand ( const MDOperand & )
delete

References MDOperand().

◆ MDOperand() [3/3]

llvm::MDOperand::MDOperand ( MDOperand && Op)
inline

Definition at line 906 of file Metadata.h.

References MDOperand(), and llvm::MetadataTracking::retrack().

◆ ~MDOperand()

llvm::MDOperand::~MDOperand ( )
inline

Definition at line 927 of file Metadata.h.

Member Function Documentation

◆ equalsStr()

bool llvm::MDOperand::equalsStr ( StringRef Str) const
inline

Definition at line 922 of file Metadata.h.

References llvm::cast(), get(), and llvm::isa_and_nonnull().

Referenced by llvm::isExplicitlyUnknownProfileMetadata().

◆ get()

◆ operator Metadata *()

llvm::MDOperand::operator Metadata * ( ) const
inline

Definition at line 930 of file Metadata.h.

References get().

◆ operator*()

Metadata & llvm::MDOperand::operator* ( ) const
inline

Definition at line 932 of file Metadata.h.

References get().

◆ operator->()

Metadata * llvm::MDOperand::operator-> ( ) const
inline

Definition at line 931 of file Metadata.h.

References get().

◆ operator=() [1/2]

MDOperand & llvm::MDOperand::operator= ( const MDOperand & )
delete

References MDOperand().

◆ operator=() [2/2]

MDOperand & llvm::MDOperand::operator= ( MDOperand && Op)
inline

Definition at line 913 of file Metadata.h.

References MDOperand(), and llvm::MetadataTracking::retrack().

◆ reset() [1/2]

void llvm::MDOperand::reset ( )
inline

Definition at line 934 of file Metadata.h.

Referenced by llvm::MDNode::setOperand().

◆ reset() [2/2]

void llvm::MDOperand::reset ( Metadata * MD,
Metadata * Owner )
inline

Definition at line 938 of file Metadata.h.


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