LLVM  3.7.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 1078 of file Metadata.h.

Member Typedef Documentation

Definition at line 1111 of file Metadata.h.

Constructor & Destructor Documentation

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

Definition at line 1083 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 1086 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 1093 of file Metadata.h.

Member Function Documentation

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

Definition at line 1112 of file Metadata.h.

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

Definition at line 1113 of file Metadata.h.

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

Definition at line 1102 of file Metadata.h.

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

Definition at line 1099 of file Metadata.h.

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

Definition at line 1100 of file Metadata.h.

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

Definition at line 1104 of file Metadata.h.

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

Definition at line 1103 of file Metadata.h.

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

Definition at line 1108 of file Metadata.h.

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

Definition at line 1107 of file Metadata.h.


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