Template Class conditional_iterator_proxy_base

Class Documentation

template<bool Const, typename ...Ts>
class conditional_iterator_proxy_base

A conditional iterator proxy is similar to an iterator_proxy in that it can be used to return a range of rows you can iterate over. In the case of an conditional_iterator_proxy a cif::condition is used to filter out only those rows that match the condition.

Template Parameters:
  • category_type – The category the iterators belong to

  • Ts – The types to which the iterators can be dereferenced

Public Functions

iterator begin() const

Return the iterator pointing to the first row.

iterator end() const

Return the iterator pointing past the last row.

bool empty() const

Return true if the range is empty.

inline explicit operator bool() const

Easy way to detect if the range is empty.

inline std::size_t size() const

Return size of the range.

inline auto front()

Return reference to the first row.

inline category_type &get_category() const

Category the iterators belong to.

Friends

template<bool C2, typename ...T2s>
friend void swap(conditional_iterator_proxy_base<C2, T2s...> &lhs, conditional_iterator_proxy_base<C2, T2s...> &rhs)

swap