LLVM  8.0.1
Public Member Functions | List of all members
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. More...
 
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 26 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 31 of file TrackingMDRef.h.

◆ TrackingMDRef() [3/4]

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

Definition at line 33 of file TrackingMDRef.h.

References X.

◆ TrackingMDRef() [4/4]

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

Definition at line 34 of file TrackingMDRef.h.

◆ ~TrackingMDRef()

llvm::TrackingMDRef::~TrackingMDRef ( )
inline

Definition at line 56 of file TrackingMDRef.h.

Member Function Documentation

◆ get()

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

◆ 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 76 of file TrackingMDRef.h.

References llvm::MetadataTracking::isReplaceable().

Referenced by llvm::TypedTrackingMDRef< MDNode >::hasTrivialDestructor().

◆ operator Metadata *()

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

Definition at line 59 of file TrackingMDRef.h.

◆ operator!=()

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

◆ operator*()

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

Definition at line 61 of file TrackingMDRef.h.

◆ operator->()

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

Definition at line 60 of file TrackingMDRef.h.

◆ operator=() [1/2]

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

Definition at line 36 of file TrackingMDRef.h.

References X.

◆ operator=() [2/2]

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

Definition at line 46 of file TrackingMDRef.h.

◆ operator==()

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

Definition at line 80 of file TrackingMDRef.h.

◆ reset() [1/2]

void llvm::TrackingMDRef::reset ( )
inline

Definition at line 63 of file TrackingMDRef.h.

Referenced by llvm::TypedTrackingMDRef< MDNode >::reset().

◆ reset() [2/2]

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

Definition at line 67 of file TrackingMDRef.h.


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