mutable
A Database System for Research and Fast Prototyping
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Attributes | Private Attributes
m::Block< N >::the_iterator< C > Struct Template Reference
Collaboration diagram for m::Block< N >::the_iterator< C >:
[legend]

Public Types

using block_t = std::conditional_t< IsConst, const Block, Block >
 
using reference = std::conditional_t< IsConst, const Tuple &, Tuple & >
 
using pointer = std::conditional_t< IsConst, const Tuple *, Tuple * >
 

Public Member Functions

 the_iterator (block_t &vec, uint64_t mask)
 
bool operator== (the_iterator other)
 
bool operator!= (the_iterator other)
 
the_iteratoroperator++ ()
 
the_iterator operator++ (int)
 
std::size_t index () const
 
reference operator* () const
 
pointer operator-> () const
 

Static Public Attributes

static constexpr bool IsConst = C
 

Private Attributes

block_tblock_
 
uint64_t mask_
 

Detailed Description

template<std::size_t N>
template<bool C>
struct m::Block< N >::the_iterator< C >

Definition at line 25 of file Interpreter.hpp.

Member Typedef Documentation

◆ block_t

template<std::size_t N>
template<bool C>
using m::Block< N >::the_iterator< C >::block_t = std::conditional_t<IsConst, const Block, Block>

Definition at line 29 of file Interpreter.hpp.

◆ pointer

template<std::size_t N>
template<bool C>
using m::Block< N >::the_iterator< C >::pointer = std::conditional_t<IsConst, const Tuple*, Tuple*>

Definition at line 31 of file Interpreter.hpp.

◆ reference

template<std::size_t N>
template<bool C>
using m::Block< N >::the_iterator< C >::reference = std::conditional_t<IsConst, const Tuple&, Tuple&>

Definition at line 30 of file Interpreter.hpp.

Constructor & Destructor Documentation

◆ the_iterator()

template<std::size_t N>
template<bool C>
m::Block< N >::the_iterator< C >::the_iterator ( block_t vec,
uint64_t  mask 
)
inline

Definition at line 38 of file Interpreter.hpp.

Member Function Documentation

◆ index()

template<std::size_t N>
template<bool C>
std::size_t m::Block< N >::the_iterator< C >::index ( ) const
inline

◆ operator!=()

template<std::size_t N>
template<bool C>
bool m::Block< N >::the_iterator< C >::operator!= ( the_iterator< C >  other)
inline

Definition at line 44 of file Interpreter.hpp.

References m::Block< N >::the_iterator< C >::operator==().

◆ operator*()

template<std::size_t N>
template<bool C>
reference m::Block< N >::the_iterator< C >::operator* ( ) const
inline

◆ operator++() [1/2]

template<std::size_t N>
template<bool C>
the_iterator & m::Block< N >::the_iterator< C >::operator++ ( )
inline

Definition at line 46 of file Interpreter.hpp.

References m::Block< N >::the_iterator< C >::mask_.

◆ operator++() [2/2]

template<std::size_t N>
template<bool C>
the_iterator m::Block< N >::the_iterator< C >::operator++ ( int  )
inline

◆ operator->()

template<std::size_t N>
template<bool C>
pointer m::Block< N >::the_iterator< C >::operator-> ( ) const
inline

◆ operator==()

template<std::size_t N>
template<bool C>
bool m::Block< N >::the_iterator< C >::operator== ( the_iterator< C >  other)
inline

Field Documentation

◆ block_

template<std::size_t N>
template<bool C>
block_t& m::Block< N >::the_iterator< C >::block_
private

◆ IsConst

template<std::size_t N>
template<bool C>
constexpr bool m::Block< N >::the_iterator< C >::IsConst = C
staticconstexpr

Definition at line 27 of file Interpreter.hpp.

◆ mask_

template<std::size_t N>
template<bool C>
uint64_t m::Block< N >::the_iterator< C >::mask_
private

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