LLVM 20.0.0git
Public Types | Public Member Functions | List of all members
llvm::sandboxir::IntervalIterator< T, IntervalType > Class Template Reference

A simple iterator for iterating the interval. More...

#include "llvm/Transforms/Vectorize/SandboxVectorizer/Interval.h"

Public Types

using difference_type = std::ptrdiff_t
 
using value_type = T
 
using pointer = value_type *
 
using reference = T &
 
using iterator_category = std::bidirectional_iterator_tag
 

Public Member Functions

 IntervalIterator (T *I, IntervalType &R)
 
bool operator== (const IntervalIterator &Other) const
 
bool operator!= (const IntervalIterator &Other) const
 
IntervalIteratoroperator++ ()
 
IntervalIterator operator++ (int)
 
IntervalIteratoroperator-- ()
 
IntervalIterator operator-- (int)
 
template<typename HT = std::enable_if<std::is_same<T, T *&>::value>>
Toperator* ()
 
Toperator* () const
 

Detailed Description

template<typename T, typename IntervalType>
class llvm::sandboxir::IntervalIterator< T, IntervalType >

A simple iterator for iterating the interval.

Definition at line 32 of file Interval.h.

Member Typedef Documentation

◆ difference_type

template<typename T , typename IntervalType >
using llvm::sandboxir::IntervalIterator< T, IntervalType >::difference_type = std::ptrdiff_t

Definition at line 37 of file Interval.h.

◆ iterator_category

template<typename T , typename IntervalType >
using llvm::sandboxir::IntervalIterator< T, IntervalType >::iterator_category = std::bidirectional_iterator_tag

Definition at line 41 of file Interval.h.

◆ pointer

template<typename T , typename IntervalType >
using llvm::sandboxir::IntervalIterator< T, IntervalType >::pointer = value_type *

Definition at line 39 of file Interval.h.

◆ reference

template<typename T , typename IntervalType >
using llvm::sandboxir::IntervalIterator< T, IntervalType >::reference = T &

Definition at line 40 of file Interval.h.

◆ value_type

template<typename T , typename IntervalType >
using llvm::sandboxir::IntervalIterator< T, IntervalType >::value_type = T

Definition at line 38 of file Interval.h.

Constructor & Destructor Documentation

◆ IntervalIterator()

template<typename T , typename IntervalType >
llvm::sandboxir::IntervalIterator< T, IntervalType >::IntervalIterator ( T I,
IntervalType &  R 
)
inline

Definition at line 43 of file Interval.h.

References I.

Member Function Documentation

◆ operator!=()

template<typename T , typename IntervalType >
bool llvm::sandboxir::IntervalIterator< T, IntervalType >::operator!= ( const IntervalIterator< T, IntervalType > &  Other) const
inline

Definition at line 48 of file Interval.h.

References llvm::Other.

◆ operator*() [1/2]

template<typename T , typename IntervalType >
template<typename HT = std::enable_if<std::is_same<T, T *&>::value>>
T & llvm::sandboxir::IntervalIterator< T, IntervalType >::operator* ( )
inline

Definition at line 72 of file Interval.h.

References I.

◆ operator*() [2/2]

template<typename T , typename IntervalType >
T & llvm::sandboxir::IntervalIterator< T, IntervalType >::operator* ( ) const
inline

Definition at line 75 of file Interval.h.

References I.

◆ operator++() [1/2]

template<typename T , typename IntervalType >
IntervalIterator & llvm::sandboxir::IntervalIterator< T, IntervalType >::operator++ ( )
inline

Definition at line 51 of file Interval.h.

References assert(), and I.

◆ operator++() [2/2]

template<typename T , typename IntervalType >
IntervalIterator llvm::sandboxir::IntervalIterator< T, IntervalType >::operator++ ( int  )
inline

Definition at line 56 of file Interval.h.

◆ operator--() [1/2]

template<typename T , typename IntervalType >
IntervalIterator & llvm::sandboxir::IntervalIterator< T, IntervalType >::operator-- ( )
inline

Definition at line 61 of file Interval.h.

References I.

◆ operator--() [2/2]

template<typename T , typename IntervalType >
IntervalIterator llvm::sandboxir::IntervalIterator< T, IntervalType >::operator-- ( int  )
inline

Definition at line 66 of file Interval.h.

◆ operator==()

template<typename T , typename IntervalType >
bool llvm::sandboxir::IntervalIterator< T, IntervalType >::operator== ( const IntervalIterator< T, IntervalType > &  Other) const
inline

Definition at line 44 of file Interval.h.

References assert(), I, and llvm::Other.


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