LLVM  8.0.1
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. More...
 

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 107 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 112 of file TrackingMDRef.h.

◆ TypedTrackingMDRef() [3/4]

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

Definition at line 114 of file TrackingMDRef.h.

◆ TypedTrackingMDRef() [4/4]

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

Definition at line 115 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 139 of file TrackingMDRef.h.

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

◆ operator T*()

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

Definition at line 128 of file TrackingMDRef.h.

◆ operator!=()

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

Definition at line 133 of file TrackingMDRef.h.

◆ operator*()

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

Definition at line 130 of file TrackingMDRef.h.

◆ operator->()

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

Definition at line 129 of file TrackingMDRef.h.

◆ operator=() [1/2]

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

Definition at line 117 of file TrackingMDRef.h.

◆ operator=() [2/2]

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

Definition at line 122 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.

◆ reset() [1/2]

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

Definition at line 135 of file TrackingMDRef.h.

◆ reset() [2/2]

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

Definition at line 136 of file TrackingMDRef.h.


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