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

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

#include <Metadata.h>

Public Types

typedef TypedMDOperandIterator< Titerator
 

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
 
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 1187 of file Metadata.h.

Member Typedef Documentation

Definition at line 1220 of file Metadata.h.

Constructor & Destructor Documentation

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

Definition at line 1192 of file Metadata.h.

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 1195 of file Metadata.h.

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 1202 of file Metadata.h.

Member Function Documentation

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

Definition at line 1221 of file Metadata.h.

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

Definition at line 1222 of file Metadata.h.

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

Definition at line 1211 of file Metadata.h.

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

Definition at line 1208 of file Metadata.h.

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

Definition at line 1209 of file Metadata.h.

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

Definition at line 1213 of file Metadata.h.

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

Definition at line 1212 of file Metadata.h.

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

Definition at line 1217 of file Metadata.h.

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

Definition at line 1216 of file Metadata.h.


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