LLVM 20.0.0git
Public Member Functions | List of all members
llvm::TypedTrackingMDRef< T > Class Template Reference

Typed tracking ref. More...

#include "llvm/IR/TrackingMDRef.h"

Inheritance diagram for llvm::TypedTrackingMDRef< T >:
Inheritance graph
[legend]

Public Member Functions

 TypedTrackingMDRef ()=default
 
 TypedTrackingMDRef (T *MD)
 
 TypedTrackingMDRef (TypedTrackingMDRef &&X)
 
 TypedTrackingMDRef (const TypedTrackingMDRef &X)
 
TypedTrackingMDRefoperator= (TypedTrackingMDRef &&X)
 
TypedTrackingMDRefoperator= (const TypedTrackingMDRef &X)
 
Tget () const
 
 operator T* () const
 
Toperator-> () const
 
Toperator* () const
 
bool operator== (const TypedTrackingMDRef &X) const
 
bool operator!= (const TypedTrackingMDRef &X) const
 
void reset ()
 
void reset (T *MD)
 
bool hasTrivialDestructor () const
 Check whether this has a trivial destructor.
 

Detailed Description

template<class T>
class llvm::TypedTrackingMDRef< T >

Typed tracking ref.

Track refererences of a particular type. It's useful to use this for MDNode and ValueAsMetadata.

Definition at line 106 of file TrackingMDRef.h.

Constructor & Destructor Documentation

◆ TypedTrackingMDRef() [1/4]

template<class T >
llvm::TypedTrackingMDRef< T >::TypedTrackingMDRef ( )
default

◆ TypedTrackingMDRef() [2/4]

template<class T >
llvm::TypedTrackingMDRef< T >::TypedTrackingMDRef ( T MD)
inlineexplicit

Definition at line 111 of file TrackingMDRef.h.

◆ TypedTrackingMDRef() [3/4]

template<class T >
llvm::TypedTrackingMDRef< T >::TypedTrackingMDRef ( TypedTrackingMDRef< T > &&  X)
inline

Definition at line 113 of file TrackingMDRef.h.

◆ TypedTrackingMDRef() [4/4]

template<class T >
llvm::TypedTrackingMDRef< T >::TypedTrackingMDRef ( const TypedTrackingMDRef< T > &  X)
inline

Definition at line 114 of file TrackingMDRef.h.

Member Function Documentation

◆ get()

template<class T >
T * llvm::TypedTrackingMDRef< T >::get ( ) const
inline

◆ hasTrivialDestructor()

template<class T >
bool llvm::TypedTrackingMDRef< T >::hasTrivialDestructor ( ) const
inline

Check whether this has a trivial destructor.

Definition at line 138 of file TrackingMDRef.h.

Referenced by llvm::DebugLoc::hasTrivialDestructor().

◆ operator T*()

template<class T >
llvm::TypedTrackingMDRef< T >::operator T* ( ) const
inline

Definition at line 127 of file TrackingMDRef.h.

◆ operator!=()

template<class T >
bool llvm::TypedTrackingMDRef< T >::operator!= ( const TypedTrackingMDRef< T > &  X) const
inline

Definition at line 132 of file TrackingMDRef.h.

References X.

◆ operator*()

template<class T >
T & llvm::TypedTrackingMDRef< T >::operator* ( ) const
inline

Definition at line 129 of file TrackingMDRef.h.

References llvm::TypedTrackingMDRef< T >::get().

◆ operator->()

template<class T >
T * llvm::TypedTrackingMDRef< T >::operator-> ( ) const
inline

Definition at line 128 of file TrackingMDRef.h.

References llvm::TypedTrackingMDRef< T >::get().

◆ operator=() [1/2]

template<class T >
TypedTrackingMDRef & llvm::TypedTrackingMDRef< T >::operator= ( const TypedTrackingMDRef< T > &  X)
inline

Definition at line 121 of file TrackingMDRef.h.

References X.

◆ operator=() [2/2]

template<class T >
TypedTrackingMDRef & llvm::TypedTrackingMDRef< T >::operator= ( TypedTrackingMDRef< T > &&  X)
inline

Definition at line 116 of file TrackingMDRef.h.

References X.

◆ operator==()

template<class T >
bool llvm::TypedTrackingMDRef< T >::operator== ( const TypedTrackingMDRef< T > &  X) const
inline

Definition at line 131 of file TrackingMDRef.h.

References X.

◆ reset() [1/2]

template<class T >
void llvm::TypedTrackingMDRef< T >::reset ( )
inline

Definition at line 134 of file TrackingMDRef.h.

◆ reset() [2/2]

template<class T >
void llvm::TypedTrackingMDRef< T >::reset ( T MD)
inline

Definition at line 135 of file TrackingMDRef.h.


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