LLVM  14.0.0git
Public Types | Public Member Functions | List of all members
llvm::TypedMDOperandIterator< T > Class Template Reference

Typed iterator through MDNode operands. More...

#include "llvm/IR/Metadata.h"

Public Types

using iterator_category = std::input_iterator_tag
 
using value_type = T *
 
using difference_type = std::ptrdiff_t
 
using pointer = void
 
using reference = T *
 

Public Member Functions

 TypedMDOperandIterator ()=default
 
 TypedMDOperandIterator (MDNode::op_iterator I)
 
T * operator* () const
 
TypedMDOperandIteratoroperator++ ()
 
TypedMDOperandIterator operator++ (int)
 
bool operator== (const TypedMDOperandIterator &X) const
 
bool operator!= (const TypedMDOperandIterator &X) const
 

Detailed Description

template<class T>
class llvm::TypedMDOperandIterator< T >

Typed iterator through MDNode operands.

An iterator that transforms an MDNode::iterator into an iterator over a particular Metadata subclass.

Definition at line 1255 of file Metadata.h.

Member Typedef Documentation

◆ difference_type

template<class T >
using llvm::TypedMDOperandIterator< T >::difference_type = std::ptrdiff_t

Definition at line 1261 of file Metadata.h.

◆ iterator_category

template<class T >
using llvm::TypedMDOperandIterator< T >::iterator_category = std::input_iterator_tag

Definition at line 1259 of file Metadata.h.

◆ pointer

template<class T >
using llvm::TypedMDOperandIterator< T >::pointer = void

Definition at line 1262 of file Metadata.h.

◆ reference

template<class T >
using llvm::TypedMDOperandIterator< T >::reference = T *

Definition at line 1263 of file Metadata.h.

◆ value_type

template<class T >
using llvm::TypedMDOperandIterator< T >::value_type = T *

Definition at line 1260 of file Metadata.h.

Constructor & Destructor Documentation

◆ TypedMDOperandIterator() [1/2]

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

◆ TypedMDOperandIterator() [2/2]

template<class T >
llvm::TypedMDOperandIterator< T >::TypedMDOperandIterator ( MDNode::op_iterator  I)
inlineexplicit

Definition at line 1266 of file Metadata.h.

References I.

Member Function Documentation

◆ operator!=()

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

Definition at line 1282 of file Metadata.h.

References I, and X.

◆ operator*()

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

Definition at line 1268 of file Metadata.h.

References I, and T.

◆ operator++() [1/2]

template<class T >
TypedMDOperandIterator& llvm::TypedMDOperandIterator< T >::operator++ ( )
inline

Definition at line 1270 of file Metadata.h.

References I.

◆ operator++() [2/2]

template<class T >
TypedMDOperandIterator llvm::TypedMDOperandIterator< T >::operator++ ( int  )
inline

Definition at line 1275 of file Metadata.h.

References I.

◆ operator==()

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

Definition at line 1281 of file Metadata.h.

References I, and X.


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