Flutter Engine
The Flutter Engine
Public Member Functions | List of all members
dart::Utils::BitsIterator< T > Class Template Reference

#include <utils.h>

Public Member Functions

 BitsIterator (uint32_t bits)
 
DART_FORCE_INLINE T operator* () const
 
DART_FORCE_INLINE bool operator== (const BitsIterator &other) const
 
DART_FORCE_INLINE bool operator!= (const BitsIterator &other) const
 
DART_FORCE_INLINE BitsIteratoroperator++ ()
 

Detailed Description

template<typename T>
class dart::Utils::BitsIterator< T >

Definition at line 570 of file utils.h.

Constructor & Destructor Documentation

◆ BitsIterator()

template<typename T >
dart::Utils::BitsIterator< T >::BitsIterator ( uint32_t  bits)
inlineexplicit

Definition at line 572 of file utils.h.

572: bits_(bits), bit_(bits & -bits) {}

Member Function Documentation

◆ operator!=()

template<typename T >
DART_FORCE_INLINE bool dart::Utils::BitsIterator< T >::operator!= ( const BitsIterator< T > &  other) const
inline

Definition at line 582 of file utils.h.

582 {
583 return !(*this == other);
584 }

◆ operator*()

template<typename T >
DART_FORCE_INLINE T dart::Utils::BitsIterator< T >::operator* ( ) const
inline

Definition at line 574 of file utils.h.

574 {
575 return static_cast<T>(BitPosition(bit_));
576 }
#define T
Definition: precompiler.cc:65

◆ operator++()

template<typename T >
DART_FORCE_INLINE BitsIterator & dart::Utils::BitsIterator< T >::operator++ ( )
inline

Definition at line 586 of file utils.h.

586 {
587 bits_ ^= bit_;
588 bit_ = bits_ & -bits_;
589 return *this;
590 }

◆ operator==()

template<typename T >
DART_FORCE_INLINE bool dart::Utils::BitsIterator< T >::operator== ( const BitsIterator< T > &  other) const
inline

Definition at line 578 of file utils.h.

578 {
579 return bits_ == other.bits_ && bit_ == other.bit_;
580 }

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