My Project
Public Member Functions | Protected Attributes | List of all members
mlir::detail::ValueUseIteratorImpl< DerivedT, OperandType > Class Template Reference

#include <UseDefLists.h>

Inheritance diagram for mlir::detail::ValueUseIteratorImpl< DerivedT, OperandType >:
Inheritance graph
[legend]
Collaboration diagram for mlir::detail::ValueUseIteratorImpl< DerivedT, OperandType >:
Collaboration graph
[legend]

Public Member Functions

template<typename T >
 ValueUseIteratorImpl (const ValueUseIteratorImpl< T, OperandType > &other)
 
 ValueUseIteratorImpl (OperandType *current=nullptr)
 
OperationgetUser () const
 
OperandType * getOperand () const
 
OperandType & operator* () const
 
ValueUseIteratorImploperator++ ()
 
bool operator== (const ValueUseIteratorImpl &rhs) const
 

Protected Attributes

OperandType * current
 

Detailed Description

template<typename DerivedT, typename OperandType>
class mlir::detail::ValueUseIteratorImpl< DerivedT, OperandType >

A base iterator class that allows for iterating over the uses of a value. This is templated to allow for derived iterators to override specific iterator methods.

Constructor & Destructor Documentation

◆ ValueUseIteratorImpl() [1/2]

template<typename DerivedT, typename OperandType>
template<typename T >
mlir::detail::ValueUseIteratorImpl< DerivedT, OperandType >::ValueUseIteratorImpl ( const ValueUseIteratorImpl< T, OperandType > &  other)
inline

◆ ValueUseIteratorImpl() [2/2]

template<typename DerivedT, typename OperandType>
mlir::detail::ValueUseIteratorImpl< DerivedT, OperandType >::ValueUseIteratorImpl ( OperandType *  current = nullptr)
inline

Member Function Documentation

◆ getOperand()

template<typename DerivedT, typename OperandType>
OperandType* mlir::detail::ValueUseIteratorImpl< DerivedT, OperandType >::getOperand ( ) const
inline

◆ getUser()

template<typename DerivedT, typename OperandType>
Operation* mlir::detail::ValueUseIteratorImpl< DerivedT, OperandType >::getUser ( ) const
inline

◆ operator*()

template<typename DerivedT, typename OperandType>
OperandType& mlir::detail::ValueUseIteratorImpl< DerivedT, OperandType >::operator* ( void  ) const
inline

◆ operator++()

template<typename DerivedT, typename OperandType>
ValueUseIteratorImpl& mlir::detail::ValueUseIteratorImpl< DerivedT, OperandType >::operator++ ( )
inline

◆ operator==()

template<typename DerivedT, typename OperandType>
bool mlir::detail::ValueUseIteratorImpl< DerivedT, OperandType >::operator== ( const ValueUseIteratorImpl< DerivedT, OperandType > &  rhs) const
inline

Member Data Documentation

◆ current

template<typename DerivedT, typename OperandType>
OperandType* mlir::detail::ValueUseIteratorImpl< DerivedT, OperandType >::current
protected

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