LLVM  8.0.1
Public Types | Public Member Functions | List of all members
llvm::MDTupleTypedArrayWrapper< T > Class Template Reference

Typed, array-like tuple of metadata. More...

#include "llvm/IR/Metadata.h"

Public Types

using iterator = TypedMDOperandIterator< T >
 

Public Member Functions

 MDTupleTypedArrayWrapper ()=default
 
 MDTupleTypedArrayWrapper (const MDTuple *N)
 
template<class U >
 MDTupleTypedArrayWrapper (const MDTupleTypedArrayWrapper< U > &Other, typename std::enable_if< std::is_convertible< U *, T *>::value >::type *=nullptr)
 
template<class U >
 MDTupleTypedArrayWrapper (const MDTupleTypedArrayWrapper< U > &Other, typename std::enable_if<!std::is_convertible< U *, T *>::value >::type *=nullptr)
 
 operator bool () const
 
 operator MDTuple * () const
 
MDTupleget () const
 
MDTupleoperator-> () const
 
MDTupleoperator* () const
 
unsigned size () const
 
bool empty () const
 
Toperator[] (unsigned I) const
 
iterator begin () const
 
iterator end () const
 

Detailed Description

template<class T>
class llvm::MDTupleTypedArrayWrapper< T >

Typed, array-like tuple of metadata.

This is a wrapper for MDTuple that makes it act like an array holding a particular type of metadata.

Definition at line 1222 of file Metadata.h.

Member Typedef Documentation

◆ iterator

Definition at line 1256 of file Metadata.h.

Constructor & Destructor Documentation

◆ MDTupleTypedArrayWrapper() [1/4]

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

◆ MDTupleTypedArrayWrapper() [2/4]

Definition at line 1227 of file Metadata.h.

◆ MDTupleTypedArrayWrapper() [3/4]

template<class T>
template<class U >
llvm::MDTupleTypedArrayWrapper< T >::MDTupleTypedArrayWrapper ( const MDTupleTypedArrayWrapper< U > &  Other,
typename std::enable_if< std::is_convertible< U *, T *>::value >::type = nullptr 
)
inline

Definition at line 1230 of file Metadata.h.

◆ MDTupleTypedArrayWrapper() [4/4]

template<class T>
template<class U >
llvm::MDTupleTypedArrayWrapper< T >::MDTupleTypedArrayWrapper ( const MDTupleTypedArrayWrapper< U > &  Other,
typename std::enable_if<!std::is_convertible< U *, T *>::value >::type = nullptr 
)
inlineexplicit

Definition at line 1237 of file Metadata.h.

Member Function Documentation

◆ begin()

template<class T>
iterator llvm::MDTupleTypedArrayWrapper< T >::begin ( ) const
inline

Definition at line 1258 of file Metadata.h.

References llvm::MDNode::op_begin().

◆ empty()

template<class T>
bool llvm::MDTupleTypedArrayWrapper< T >::empty ( ) const
inline

Definition at line 1252 of file Metadata.h.

References llvm::MDNode::getNumOperands().

◆ end()

template<class T>
iterator llvm::MDTupleTypedArrayWrapper< T >::end ( ) const
inline

Definition at line 1259 of file Metadata.h.

References llvm::MDNode::op_end().

◆ get()

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

Definition at line 1246 of file Metadata.h.

References N.

Referenced by llvm::VerifierSupport::VerifierSupport().

◆ operator bool()

template<class T>
llvm::MDTupleTypedArrayWrapper< T >::operator bool ( ) const
inlineexplicit

Definition at line 1243 of file Metadata.h.

◆ operator MDTuple *()

template<class T>
llvm::MDTupleTypedArrayWrapper< T >::operator MDTuple * ( ) const
inlineexplicit

Definition at line 1244 of file Metadata.h.

◆ operator*()

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

Definition at line 1248 of file Metadata.h.

◆ operator->()

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

Definition at line 1247 of file Metadata.h.

◆ operator[]()

template<class T>
T* llvm::MDTupleTypedArrayWrapper< T >::operator[] ( unsigned  I) const
inline

Definition at line 1253 of file Metadata.h.

References llvm::MDNode::getOperand().

◆ size()

template<class T>
unsigned llvm::MDTupleTypedArrayWrapper< T >::size ( ) const
inline

Definition at line 1251 of file Metadata.h.

References llvm::MDNode::getNumOperands().


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