Thanks to visit codestin.com
Credit goes to llvm.org

LLVM 22.0.0git
llvm::TrackingMDRef Class Reference

Tracking metadata reference. More...

#include "llvm/IR/TrackingMDRef.h"

Public Member Functions

 TrackingMDRef ()=default
 TrackingMDRef (Metadata *MD)
 TrackingMDRef (TrackingMDRef &&X)
 TrackingMDRef (const TrackingMDRef &X)
TrackingMDRefoperator= (TrackingMDRef &&X)
TrackingMDRefoperator= (const TrackingMDRef &X)
 ~TrackingMDRef ()
Metadataget () const
 operator Metadata * () const
Metadataoperator-> () const
Metadataoperator* () const
void reset ()
void reset (Metadata *MD)
bool hasTrivialDestructor () const
 Check whether this has a trivial destructor.
bool operator== (const TrackingMDRef &X) const
bool operator!= (const TrackingMDRef &X) const

Detailed Description

Tracking metadata reference.

This class behaves like TrackingVH, but for metadata.

Definition at line 25 of file TrackingMDRef.h.

Constructor & Destructor Documentation

◆ TrackingMDRef() [1/4]

llvm::TrackingMDRef::TrackingMDRef ( )
default

◆ TrackingMDRef() [2/4]

llvm::TrackingMDRef::TrackingMDRef ( Metadata * MD)
inlineexplicit

Definition at line 30 of file TrackingMDRef.h.

◆ TrackingMDRef() [3/4]

llvm::TrackingMDRef::TrackingMDRef ( TrackingMDRef && X)
inline

Definition at line 32 of file TrackingMDRef.h.

References TrackingMDRef(), and X.

◆ TrackingMDRef() [4/4]

llvm::TrackingMDRef::TrackingMDRef ( const TrackingMDRef & X)
inline

Definition at line 33 of file TrackingMDRef.h.

References TrackingMDRef(), and X.

◆ ~TrackingMDRef()

llvm::TrackingMDRef::~TrackingMDRef ( )
inline

Definition at line 55 of file TrackingMDRef.h.

Member Function Documentation

◆ get()

◆ hasTrivialDestructor()

bool llvm::TrackingMDRef::hasTrivialDestructor ( ) const
inline

Check whether this has a trivial destructor.

If MD isn't replaceable, the destructor will be a no-op.

Definition at line 75 of file TrackingMDRef.h.

References llvm::MetadataTracking::isReplaceable().

◆ operator Metadata *()

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

Definition at line 58 of file TrackingMDRef.h.

References get().

◆ operator!=()

bool llvm::TrackingMDRef::operator!= ( const TrackingMDRef & X) const
inline

Definition at line 80 of file TrackingMDRef.h.

References TrackingMDRef(), and X.

◆ operator*()

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

Definition at line 60 of file TrackingMDRef.h.

References get().

◆ operator->()

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

Definition at line 59 of file TrackingMDRef.h.

References get().

◆ operator=() [1/2]

TrackingMDRef & llvm::TrackingMDRef::operator= ( const TrackingMDRef & X)
inline

Definition at line 45 of file TrackingMDRef.h.

References TrackingMDRef(), and X.

◆ operator=() [2/2]

TrackingMDRef & llvm::TrackingMDRef::operator= ( TrackingMDRef && X)
inline

Definition at line 35 of file TrackingMDRef.h.

References TrackingMDRef(), and X.

◆ operator==()

bool llvm::TrackingMDRef::operator== ( const TrackingMDRef & X) const
inline

Definition at line 79 of file TrackingMDRef.h.

References TrackingMDRef(), and X.

◆ reset() [1/2]

void llvm::TrackingMDRef::reset ( )
inline

Definition at line 62 of file TrackingMDRef.h.

◆ reset() [2/2]

void llvm::TrackingMDRef::reset ( Metadata * MD)
inline

Definition at line 66 of file TrackingMDRef.h.


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