26 #include "op_traits.hpp"
27 #include "../../utilities/container_iterator.hpp"
32 template<
typename ATYPE>
class array_view;
83 div_op(
const OP1T &o1,
const OP2T &o2):
99 return this->_op1[i]/this->_op2[i];
112 value_type
at(
size_t i)
const
130 return _op1.size() > _op2.size() ? _op1.size() : _op2.size();
142 const_iterator
end()
const
container_iterator< const array_type > const_reverse_iterator
const reverse iterator type
Definition: div_op.hpp:67
value_type operator[](size_t i) const
return result at i
Definition: div_op.hpp:97
const_iterator begin() const
get const iterator to first element
Definition: div_op.hpp:135
array_view< array_type > view_type
view type
Definition: div_op.hpp:69
OP1::inplace_arithmetic inplace_arithmetic
inplace arithmetic type
Definition: op_traits.hpp:88
#define EXCEPTION_RECORD
macro creating an instance of ExceptionRecord
Definition: exceptions.hpp:48
iterator type
Definition: container_iterator.hpp:59
const_iterator end() const
get const iterator to last+1 element
Definition: div_op.hpp:142
OP1::map_type map_type
index map type
Definition: op_traits.hpp:86
value_type at(size_t i) const
return value at i
Definition: div_op.hpp:112
index error
Definition: exceptions.hpp:437
Definition: add_op.hpp:29
container_iterator< const array_type > const_iterator
const iterator type
Definition: div_op.hpp:63
array_trait< OP1T, OP2T >::inplace_arithmetic inplace_arithmetic
inplace arithmetic type
Definition: div_op.hpp:74
container_iterator< array_type > iterator
non-const iterator - just for interface
Definition: div_op.hpp:61
Division expression template.
Definition: div_op.hpp:45
op_trait< OP1T >::ref_type _op1
reference to the left operand
Definition: div_op.hpp:49
container_iterator< array_type > reverse_iterator
reverse iterator type
Definition: div_op.hpp:65
array_trait< OP1T, OP2T >::map_type map_type
index map type
Definition: div_op.hpp:71
div_op< OP1T, OP2T > array_type
type of the expression template
Definition: div_op.hpp:57
size_t size() const
get size
Definition: div_op.hpp:128
OP1T::value_type value_type
result type of the operation
Definition: div_op.hpp:55
div_op(const OP1T &o1, const OP2T &o2)
constructor
Definition: div_op.hpp:83
void storage_type
storage type
Definition: div_op.hpp:59
op_trait< OP2T >::ref_type _op2
reference to the right operand
Definition: div_op.hpp:51
operator reference trait
Definition: op_traits.hpp:43
provides a view on a part of an array
Definition: add_op.hpp:32