LLVM 20.0.0git
Public Types | Public Member Functions | Friends | List of all members
llvm::CoalescingBitVector< IndexT >::const_iterator Class Reference

#include "llvm/ADT/CoalescingBitVector.h"

Public Types

using iterator_category = std::forward_iterator_tag
 
using value_type = IndexT
 
using difference_type = std::ptrdiff_t
 
using pointer = value_type *
 
using reference = value_type &
 

Public Member Functions

 const_iterator ()
 
bool operator== (const const_iterator &RHS) const
 
bool operator!= (const const_iterator &RHS) const
 
IndexT operator* () const
 
const_iteratoroperator++ ()
 
const_iterator operator++ (int)
 
void advanceToLowerBound (IndexT Index)
 Advance the iterator to the first set bit AT, OR AFTER, Index.
 

Friends

class CoalescingBitVector
 

Detailed Description

template<typename IndexT>
class llvm::CoalescingBitVector< IndexT >::const_iterator

Definition at line 235 of file CoalescingBitVector.h.

Member Typedef Documentation

◆ difference_type

template<typename IndexT >
using llvm::CoalescingBitVector< IndexT >::const_iterator::difference_type = std::ptrdiff_t

Definition at line 241 of file CoalescingBitVector.h.

◆ iterator_category

template<typename IndexT >
using llvm::CoalescingBitVector< IndexT >::const_iterator::iterator_category = std::forward_iterator_tag

Definition at line 239 of file CoalescingBitVector.h.

◆ pointer

template<typename IndexT >
using llvm::CoalescingBitVector< IndexT >::const_iterator::pointer = value_type *

Definition at line 242 of file CoalescingBitVector.h.

◆ reference

template<typename IndexT >
using llvm::CoalescingBitVector< IndexT >::const_iterator::reference = value_type &

Definition at line 243 of file CoalescingBitVector.h.

◆ value_type

template<typename IndexT >
using llvm::CoalescingBitVector< IndexT >::const_iterator::value_type = IndexT

Definition at line 240 of file CoalescingBitVector.h.

Constructor & Destructor Documentation

◆ const_iterator()

template<typename IndexT >
llvm::CoalescingBitVector< IndexT >::const_iterator::const_iterator ( )
inline

Definition at line 292 of file CoalescingBitVector.h.

Member Function Documentation

◆ advanceToLowerBound()

template<typename IndexT >
void llvm::CoalescingBitVector< IndexT >::const_iterator::advanceToLowerBound ( IndexT  Index)
inline

Advance the iterator to the first set bit AT, OR AFTER, Index.

If no such set bit exists, advance to end(). This is like std::lower_bound. This is useful if Index is close to the current iterator position. However, unlike find(), this has worst-case O(n) performance.

Definition at line 330 of file CoalescingBitVector.h.

References Index.

Referenced by llvm::CoalescingBitVector< IndexT >::half_open_range().

◆ operator!=()

template<typename IndexT >
bool llvm::CoalescingBitVector< IndexT >::const_iterator::operator!= ( const const_iterator RHS) const
inline

◆ operator*()

template<typename IndexT >
IndexT llvm::CoalescingBitVector< IndexT >::const_iterator::operator* ( ) const
inline

Definition at line 306 of file CoalescingBitVector.h.

◆ operator++() [1/2]

template<typename IndexT >
const_iterator & llvm::CoalescingBitVector< IndexT >::const_iterator::operator++ ( )
inline

◆ operator++() [2/2]

template<typename IndexT >
const_iterator llvm::CoalescingBitVector< IndexT >::const_iterator::operator++ ( int  )
inline

◆ operator==()

template<typename IndexT >
bool llvm::CoalescingBitVector< IndexT >::const_iterator::operator== ( const const_iterator RHS) const
inline

Friends And Related Function Documentation

◆ CoalescingBitVector

template<typename IndexT >
friend class CoalescingBitVector
friend

Definition at line 236 of file CoalescingBitVector.h.


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