Algorithms Library Toolkit
A toolkit for algorithms, especially for algorithms on formal languages
Data Structures | Public Member Functions | Data Fields | Friends
common::SparseBoolVector Class Reference

#include <SparseBoolVector.hpp>

Data Structures

struct  element
 
class  SparseBoolVectorOnesIterator
 

Public Member Functions

 SparseBoolVector ()=default
 
 SparseBoolVector (const ext::vector< bool > &raw)
 
 SparseBoolVector (ext::list< element > data, size_t size)
 
void push_back (bool boolean)
 
bool operator[] (size_t index) const
 
BitReference operator[] (size_t index)
 
 operator ext::vector< bool > () const
 
void resize (size_t newSize)
 
size_t size () const
 
const ext::list< element > & data () const
 
bool operator== (const SparseBoolVector &other) const
 
std::strong_ordering operator<=> (const SparseBoolVector &other) const
 
SparseBoolVectorOnesIterator begin () const
 
SparseBoolVectorOnesIterator end () const
 

Data Fields

ext::list< elementm_Data
 
size_t m_Size { 0 }
 

Friends

SparseBoolVectoroperator<<= (SparseBoolVector &A, size_t dist)
 
SparseBoolVector operator<< (SparseBoolVector A, size_t dist)
 
ext::ostreamoperator<< (ext::ostream &out, const common::SparseBoolVector &elem)
 
ext::ostreamoperator<< (ext::ostream &out, const common::SparseBoolVector::element &elem)
 
SparseBoolVectoroperator&= (SparseBoolVector &A, const SparseBoolVector &B)
 
SparseBoolVector operator& (SparseBoolVector A, const SparseBoolVector &B)
 

Constructor & Destructor Documentation

◆ SparseBoolVector() [1/3]

common::SparseBoolVector::SparseBoolVector ( )
default

◆ SparseBoolVector() [2/3]

common::SparseBoolVector::SparseBoolVector ( const ext::vector< bool > &  raw)
inline
Here is the call graph for this function:

◆ SparseBoolVector() [3/3]

common::SparseBoolVector::SparseBoolVector ( ext::list< element data,
size_t  size 
)
inline

Member Function Documentation

◆ begin()

SparseBoolVectorOnesIterator common::SparseBoolVector::begin ( ) const
inline

◆ data()

const ext::list< element > & common::SparseBoolVector::data ( ) const
inline

◆ end()

SparseBoolVectorOnesIterator common::SparseBoolVector::end ( ) const
inline

◆ operator ext::vector< bool >()

common::SparseBoolVector::operator ext::vector< bool > ( ) const
inline

◆ operator<=>()

std::strong_ordering common::SparseBoolVector::operator<=> ( const SparseBoolVector other) const
inline
Here is the call graph for this function:

◆ operator==()

bool common::SparseBoolVector::operator== ( const SparseBoolVector other) const
inline

◆ operator[]() [1/2]

BitReference common::SparseBoolVector::operator[] ( size_t  index)
inline

◆ operator[]() [2/2]

bool common::SparseBoolVector::operator[] ( size_t  index) const
inline

◆ push_back()

void common::SparseBoolVector::push_back ( bool  boolean)
inline
Here is the caller graph for this function:

◆ resize()

void common::SparseBoolVector::resize ( size_t  newSize)
inline
Here is the caller graph for this function:

◆ size()

size_t common::SparseBoolVector::size ( ) const
inline
Here is the caller graph for this function:

Friends And Related Function Documentation

◆ operator&

SparseBoolVector operator& ( SparseBoolVector  A,
const SparseBoolVector B 
)
friend

◆ operator&=

SparseBoolVector & operator&= ( SparseBoolVector A,
const SparseBoolVector B 
)
friend

◆ operator<< [1/3]

ext::ostream & operator<< ( ext::ostream out,
const common::SparseBoolVector elem 
)
friend

◆ operator<< [2/3]

ext::ostream & operator<< ( ext::ostream out,
const common::SparseBoolVector::element elem 
)
friend

◆ operator<< [3/3]

SparseBoolVector operator<< ( SparseBoolVector  A,
size_t  dist 
)
friend

◆ operator<<=

SparseBoolVector & operator<<= ( SparseBoolVector A,
size_t  dist 
)
friend

Field Documentation

◆ m_Data

ext::list< element > common::SparseBoolVector::m_Data

◆ m_Size

size_t common::SparseBoolVector::m_Size { 0 }

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