3 #ifndef BARRY_BARRAYCELL_BONES_HPP
4 #define BARRY_BARRAYCELL_BONES_HPP 1
6 template <
typename Cell_Type =
bool,
typename Data_Type =
bool>
17 Array(Array_),
i(i_),
j(j_) {
22 if (
i >= Array->
nrow())
23 throw std::length_error(
"Row out of range.");
24 if (
j >= Array->
ncol())
25 throw std::length_error(
"Col out of range.");
38 operator Cell_Type()
const;
45 template <
typename Cell_Type =
bool,
typename Data_Type =
bool>
56 Array(Array_),
i(i_),
j(j_) {
59 if (
i >= Array->
nrow())
60 throw std::length_error(
"Row out of range.");
61 if (
j >= Array->
ncol())
62 throw std::length_error(
"Col out of range.");
69 operator Cell_Type()
const;
72 bool operator<(
const Cell_Type & val)
const;
73 bool operator>(
const Cell_Type & val)
const;
bool operator==(const Cell_Type &val) const
bool operator>(const Cell_Type &val) const
bool operator<=(const Cell_Type &val) const
BArrayCell_const(const BArray< Cell_Type, Data_Type > *Array_, size_t i_, size_t j_, bool check_bounds=true)
bool operator<(const Cell_Type &val) const
bool operator!=(const Cell_Type &val) const
bool operator>=(const Cell_Type &val) const
void operator+=(const Cell_Type &val)
void operator-=(const Cell_Type &val)
BArrayCell(BArray< Cell_Type, Data_Type > *Array_, size_t i_, size_t j_, bool check_bounds=true)
bool operator==(const Cell_Type &val) const
void operator/=(const Cell_Type &val)
void operator*=(const Cell_Type &val)
void operator=(const Cell_Type &val)
size_t ncol() const noexcept
size_t nrow() const noexcept