|
| xview (const xview &)=default |
|
template<class E > |
self_type & | operator= (const xexpression< E > &e) |
|
template<class E > |
disable_xexpression< E, self_type > & | operator= (const E &e) |
|
template<class... Args> |
reference | operator() (Args... args) |
|
template<class... Args> |
reference | unchecked (Args... args) |
|
template<class It > |
reference | element (It first, It last) |
|
template<class... Args> |
const_reference | operator() (Args... args) const |
|
template<class... Args> |
const_reference | unchecked (Args... args) const |
|
template<class It > |
const_reference | element (It first, It last) const |
|
template<class ST , bool Enable = is_strided_view> |
std::enable_if_t<!Enable, stepper > | stepper_begin (const ST &shape) |
|
template<class ST , bool Enable = is_strided_view> |
std::enable_if_t<!Enable, stepper > | stepper_end (const ST &shape, layout_type l) |
|
template<class ST , bool Enable = is_strided_view> |
std::enable_if_t<!Enable, const_stepper > | stepper_begin (const ST &shape) const |
|
template<class ST , bool Enable = is_strided_view> |
std::enable_if_t<!Enable, const_stepper > | stepper_end (const ST &shape, layout_type l) const |
|
template<class ST , bool Enable = is_strided_view> |
std::enable_if_t< Enable, stepper > | stepper_begin (const ST &shape) |
|
template<class ST , bool Enable = is_strided_view> |
std::enable_if_t< Enable, stepper > | stepper_end (const ST &shape, layout_type l) |
|
template<class ST , bool Enable = is_strided_view> |
std::enable_if_t< Enable, const_stepper > | stepper_begin (const ST &shape) const |
|
template<class ST , bool Enable = is_strided_view> |
std::enable_if_t< Enable, const_stepper > | stepper_end (const ST &shape, layout_type l) const |
|
template<class T = xexpression_type> |
std::enable_if_t< has_data_interface< T >::value, storage_type & > | storage () |
|
template<class T = xexpression_type> |
std::enable_if_t< has_data_interface< T >::value, const storage_type & > | storage () const |
|
template<class T = xexpression_type> |
std::enable_if_t< has_data_interface< T >::value &&is_strided_view, linear_iterator > | linear_begin () |
|
template<class T = xexpression_type> |
std::enable_if_t< has_data_interface< T >::value &&is_strided_view, linear_iterator > | linear_end () |
|
template<class T = xexpression_type> |
std::enable_if_t< has_data_interface< T >::value &&is_strided_view, const_linear_iterator > | linear_begin () const |
|
template<class T = xexpression_type> |
std::enable_if_t< has_data_interface< T >::value &&is_strided_view, const_linear_iterator > | linear_end () const |
|
template<class T = xexpression_type> |
std::enable_if_t< has_data_interface< T >::value &&is_strided_view, const_linear_iterator > | linear_cbegin () const |
|
template<class T = xexpression_type> |
std::enable_if_t< has_data_interface< T >::value &&is_strided_view, const_linear_iterator > | linear_cend () const |
|
template<class T = xexpression_type> |
std::enable_if_t< has_data_interface< T >::value &&is_strided_view, reverse_linear_iterator > | linear_rbegin () |
|
template<class T = xexpression_type> |
std::enable_if_t< has_data_interface< T >::value &&is_strided_view, reverse_linear_iterator > | linear_rend () |
|
template<class T = xexpression_type> |
std::enable_if_t< has_data_interface< T >::value &&is_strided_view, const_reverse_linear_iterator > | linear_rbegin () const |
|
template<class T = xexpression_type> |
std::enable_if_t< has_data_interface< T >::value &&is_strided_view, const_reverse_linear_iterator > | linear_rend () const |
|
template<class T = xexpression_type> |
std::enable_if_t< has_data_interface< T >::value &&is_strided_view, const_reverse_linear_iterator > | linear_crbegin () const |
|
template<class T = xexpression_type> |
std::enable_if_t< has_data_interface< T >::value &&is_strided_view, const_reverse_linear_iterator > | linear_crend () const |
|
template<class T = xexpression_type> |
std::enable_if_t< has_data_interface< T >::value &&is_strided_view, const inner_strides_type & > | strides () const |
|
template<class T = xexpression_type> |
std::enable_if_t< has_data_interface< T >::value &&is_strided_view, const inner_strides_type & > | backstrides () const |
|
template<class T = xexpression_type> |
std::enable_if_t< has_data_interface< T >::value &&is_strided_view, const_pointer > | data () const |
|
template<class T = xexpression_type> |
std::enable_if_t< has_data_interface< T >::value &&is_strided_view, pointer > | data () |
|
template<class T = xexpression_type> |
std::enable_if_t< has_data_interface< T >::value &&is_strided_view, std::size_t > | data_offset () const noexcept |
|
template<class ST = self_type, class = std::enable_if_t<is_xscalar<std::decay_t<ST>>::value, int>> |
| operator reference () |
|
template<class ST = self_type, class = std::enable_if_t<is_xscalar<std::decay_t<ST>>::value, int>> |
| operator const_reference () const |
|
template<class E > |
rebind_t< E > | build_view (E &&e) const |
|
template<class align , class simd , class T = xexpression_type> |
enable_simd_interface< T, void > | store_simd (size_type i, const simd &e) |
|
template<class align , class requested_type = value_type, std::size_t N = xt_simd::simd_traits<requested_type>::size, class T = xexpression_type> |
enable_simd_interface< T, simd_return_type< requested_type > > | load_simd (size_type i) const |
|
template<class T = xexpression_type> |
enable_simd_interface< T, reference > | data_element (size_type i) |
|
template<class T = xexpression_type> |
enable_simd_interface< T, const_reference > | data_element (size_type i) const |
|
template<class T = xexpression_type> |
enable_simd_interface< T, reference > | flat (size_type i) |
|
template<class T = xexpression_type> |
enable_simd_interface< T, const_reference > | flat (size_type i) const |
|
|
const inner_shape_type & | shape () const noexcept |
| Returns the shape of the view.
|
|
const slice_type & | slices () const noexcept |
| Returns the slices of the view.
|
|
layout_type | layout () const noexcept |
| Returns the slices of the view.
|
|
bool | is_contiguous () const noexcept |
|
|
template<class E > |
auto | operator= (const xexpression< E > &e) -> self_type & |
| The extended assignment operator.
|
|
template<class E > |
auto | operator= (const E &e) -> disable_xexpression< E, self_type > & |
|
derived_type & | assign_xexpression (const xexpression< E > &e) |
|
derived_type & | computed_assign (const xexpression< E > &e) |
|
derived_type & | scalar_computed_assign (const E &e, F &&f) |
|
derived_type & | assign_temporary (temporary_type &&) |
| Assigns the temporary tmp to *this .
|
|
auto | assign_xexpression (const xexpression< E > &e) -> derived_type & |
|
auto | computed_assign (const xexpression< E > &e) -> derived_type & |
|
auto | scalar_computed_assign (const E &e, F &&f) -> derived_type & |
|
auto | operator= (const xexpression< E > &rhs) -> derived_type & |
|
template<class E > |
disable_xexpression< E, derived_type & > | operator+= (const E &) |
|
template<class E > |
disable_xexpression< E, derived_type & > | operator-= (const E &) |
|
template<class E > |
disable_xexpression< E, derived_type & > | operator*= (const E &) |
|
template<class E > |
disable_xexpression< E, derived_type & > | operator/= (const E &) |
|
template<class E > |
disable_xexpression< E, derived_type & > | operator%= (const E &) |
|
template<class E > |
disable_xexpression< E, derived_type & > | operator&= (const E &) |
|
template<class E > |
disable_xexpression< E, derived_type & > | operator|= (const E &) |
|
template<class E > |
disable_xexpression< E, derived_type & > | operator^= (const E &) |
|
template<class E > |
derived_type & | operator+= (const xexpression< E > &) |
|
template<class E > |
derived_type & | operator-= (const xexpression< E > &) |
|
template<class E > |
derived_type & | operator*= (const xexpression< E > &) |
|
template<class E > |
derived_type & | operator/= (const xexpression< E > &) |
|
template<class E > |
derived_type & | operator%= (const xexpression< E > &) |
|
template<class E > |
derived_type & | operator&= (const xexpression< E > &) |
|
template<class E > |
derived_type & | operator|= (const xexpression< E > &) |
|
template<class E > |
derived_type & | operator^= (const xexpression< E > &) |
|
template<class E > |
derived_type & | assign (const xexpression< E > &) |
|
template<class E > |
derived_type & | plus_assign (const xexpression< E > &) |
|
template<class E > |
derived_type & | minus_assign (const xexpression< E > &) |
|
template<class E > |
derived_type & | multiplies_assign (const xexpression< E > &) |
|
template<class E > |
derived_type & | divides_assign (const xexpression< E > &) |
|
template<class E > |
derived_type & | modulus_assign (const xexpression< E > &) |
|
template<class E > |
derived_type & | bit_and_assign (const xexpression< E > &) |
|
template<class E > |
derived_type & | bit_or_assign (const xexpression< E > &) |
|
template<class E > |
derived_type & | bit_xor_assign (const xexpression< E > &) |
|
template<class E > |
auto | operator+= (const E &e) -> disable_xexpression< E, derived_type & > |
| Adds the scalar e to *this .
|
|
template<class E > |
auto | operator-= (const E &e) -> disable_xexpression< E, derived_type & > |
| Subtracts the scalar e from *this .
|
|
template<class E > |
auto | operator*= (const E &e) -> disable_xexpression< E, derived_type & > |
| Multiplies *this with the scalar e .
|
|
template<class E > |
auto | operator/= (const E &e) -> disable_xexpression< E, derived_type & > |
| Divides *this by the scalar e .
|
|
template<class E > |
auto | operator%= (const E &e) -> disable_xexpression< E, derived_type & > |
| Computes the remainder of *this after division by the scalar e .
|
|
template<class E > |
auto | operator&= (const E &e) -> disable_xexpression< E, derived_type & > |
| Computes the bitwise and of *this and the scalar e and assigns it to *this .
|
|
template<class E > |
auto | operator|= (const E &e) -> disable_xexpression< E, derived_type & > |
| Computes the bitwise or of *this and the scalar e and assigns it to *this .
|
|
template<class E > |
auto | operator^= (const E &e) -> disable_xexpression< E, derived_type & > |
| Computes the bitwise xor of *this and the scalar e and assigns it to *this .
|
|
template<class E > |
auto | operator+= (const xexpression< E > &e) -> derived_type & |
| Adds the xexpression e to *this .
|
|
template<class E > |
auto | operator-= (const xexpression< E > &e) -> derived_type & |
| Subtracts the xexpression e from *this .
|
|
template<class E > |
auto | operator*= (const xexpression< E > &e) -> derived_type & |
| Multiplies *this with the xexpression e .
|
|
template<class E > |
auto | operator/= (const xexpression< E > &e) -> derived_type & |
| Divides *this by the xexpression e .
|
|
template<class E > |
auto | operator%= (const xexpression< E > &e) -> derived_type & |
| Computes the remainder of *this after division by the xexpression e .
|
|
template<class E > |
auto | operator&= (const xexpression< E > &e) -> derived_type & |
| Computes the bitwise and of *this and the xexpression e and assigns it to *this .
|
|
template<class E > |
auto | operator|= (const xexpression< E > &e) -> derived_type & |
| Computes the bitwise or of *this and the xexpression e and assigns it to *this .
|
|
template<class E > |
auto | operator^= (const xexpression< E > &e) -> derived_type & |
| Computes the bitwise xor of *this and the xexpression e and assigns it to *this .
|
|
template<class E > |
auto | assign (const xexpression< E > &e) -> derived_type & |
| Assigns the xexpression e to *this .
|
|
template<class E > |
auto | plus_assign (const xexpression< E > &e) -> derived_type & |
| Adds the xexpression e to *this .
|
|
template<class E > |
auto | minus_assign (const xexpression< E > &e) -> derived_type & |
| Subtracts the xexpression e to *this .
|
|
template<class E > |
auto | multiplies_assign (const xexpression< E > &e) -> derived_type & |
| Multiplies *this with the xexpression e .
|
|
template<class E > |
auto | divides_assign (const xexpression< E > &e) -> derived_type & |
| Divides *this by the xexpression e .
|
|
template<class E > |
auto | modulus_assign (const xexpression< E > &e) -> derived_type & |
| Computes the remainder of *this after division by the xexpression e .
|
|
template<class E > |
auto | bit_and_assign (const xexpression< E > &e) -> derived_type & |
| Computes the bitwise and of e to *this .
|
|
template<class E > |
auto | bit_or_assign (const xexpression< E > &e) -> derived_type & |
| Computes the bitwise or of e to *this .
|
|
template<class E > |
auto | bit_xor_assign (const xexpression< E > &e) -> derived_type & |
| Computes the bitwise xor of e to *this .
|
|
template<class E > |
auto | operator= (const xexpression< E > &e) -> derived_type & |
|
reference | at (Args... args) |
|
auto | at (Args... args) -> reference |
| Returns a reference to the element at the specified position in the expression, after dimension and bounds checking.
|
|
const_reference | at (Args... args) const |
|
auto | at (Args... args) const -> const_reference |
| Returns a constant reference to the element at the specified position in the expression, after dimension and bounds checking.
|
|
disable_integral_t< S, reference > | operator[] (const S &index) |
|
reference | operator[] (std::initializer_list< I > index) |
|
reference | operator[] (size_type i) |
|
auto | operator[] (const S &index) -> disable_integral_t< S, reference > |
| Returns a reference to the element at the specified position in the expression.
|
|
auto | operator[] (std::initializer_list< I > index) -> reference |
|
reference | periodic (Args... args) |
|
auto | periodic (Args... args) -> reference |
| Returns a reference to the element at the specified position in the expression, after applying periodicity to the indices (negative and 'overflowing' indices are changed).
|
|
const_reference | periodic (Args... args) const |
|
auto | periodic (Args... args) const -> const_reference |
| Returns a constant reference to the element at the specified position in the expression, after applying periodicity to the indices (negative and 'overflowing' indices are changed).
|
|
reference | front () |
| Returns a reference to the first element of the expression.
|
|
const_reference | front () const |
| Returns a constant reference to first the element of the expression.
|
|
reference | back () |
| Returns a reference to the last element of the expression.
|
|
const_reference | back () const |
| Returns a constant reference to last the element of the expression.
|
|
size_type | size () const noexcept |
| Returns the size of the expression.
|
|
size_type | dimension () const noexcept |
| Returns the number of dimensions of the expression.
|
|
size_type | shape (size_type index) const |
| Returns the i-th dimension of the expression.
|
|
template<class... Args> |
const_reference | at (Args... args) const |
|
template<class S > |
disable_integral_t< S, const_reference > | operator[] (const S &index) const |
|
template<class I > |
const_reference | operator[] (std::initializer_list< I > index) const |
|
const_reference | operator[] (size_type i) const |
|
template<class... Args> |
const_reference | periodic (Args... args) const |
|
template<class... Args> |
bool | in_bounds (Args... args) const |
| Returns true only if the the specified position is a valid entry in the expression.
|
|
const_reference | front () const |
| Returns a constant reference to first the element of the expression.
|
|
const_reference | back () const |
| Returns a constant reference to last the element of the expression.
|
|
template<class... Args> |
auto | at (Args... args) const -> const_reference |
| Returns a constant reference to the element at the specified position in the expression, after dimension and bounds checking.
|
|
template<class S > |
auto | operator[] (const S &index) const -> disable_integral_t< S, const_reference > |
| Returns a constant reference to the element at the specified position in the expression.
|
|
template<class I > |
auto | operator[] (std::initializer_list< I > index) const -> const_reference |
|
template<class... Args> |
auto | periodic (Args... args) const -> const_reference |
| Returns a constant reference to the element at the specified position in the expression, after applying periodicity to the indices (negative and 'overflowing' indices are changed).
|
|
|
template<class ST > |
bool | broadcast_shape (ST &shape, bool reuse_cache=false) const |
| Broadcast the shape of the view to the specified parameter.
|
|
template<class ST > |
bool | has_linear_assign (const ST &strides) const |
| Checks whether the xview can be linearly assigned to an expression with the specified strides.
|
|
template<class It > |
It | data_xbegin_impl (It begin) const noexcept |
|
template<class It > |
It | data_xend_impl (It begin, layout_type l, size_type offset) const noexcept |
|
container_iterator | data_xbegin () noexcept |
|
const_container_iterator | data_xbegin () const noexcept |
|
container_iterator | data_xend (layout_type l, size_type offset) noexcept |
|
const_container_iterator | data_xend (layout_type l, size_type offset) const noexcept |
|
template<class E , class T = xexpression_type, class = std::enable_if_t<has_data_interface<T>::value && is_contiguous_view, int>> |
void | assign_to (xexpression< E > &e, bool force_resize) const |
|
template<class E , std::size_t... I> |
auto | build_view_impl (E &&e, std::index_sequence< I... >) const -> rebind_t< E > |
|
template<class E > |
auto | build_view (E &&e) const -> rebind_t< E > |
|
template<class align , class simd , class T > |
auto | store_simd (size_type i, const simd &e) -> enable_simd_interface< T, void > |
|
template<class align , class requested_type , std::size_t N, class T > |
auto | load_simd (size_type i) const -> enable_simd_interface< T, simd_return_type< requested_type > > |
|
template<class T > |
auto | data_element (size_type i) -> enable_simd_interface< T, reference > |
|
template<class T > |
auto | data_element (size_type i) const -> enable_simd_interface< T, const_reference > |
|
template<class T > |
auto | flat (size_type i) -> enable_simd_interface< T, reference > |
|
template<class T > |
auto | flat (size_type i) const -> enable_simd_interface< T, const_reference > |
|
template<class Arg , class... Args> |
auto | access (Arg arg, Args... args) -> reference |
|
template<class Arg , class... Args> |
auto | access (Arg arg, Args... args) const -> const_reference |
|
template<typename std::decay_t< CT >::size_type... I, class... Args> |
auto | unchecked_impl (std::index_sequence< I... >, Args... args) -> reference |
|
template<typename std::decay_t< CT >::size_type... I, class... Args> |
auto | unchecked_impl (std::index_sequence< I... >, Args... args) const -> const_reference |
|
template<typename std::decay_t< CT >::size_type... I, class... Args> |
auto | access_impl (std::index_sequence< I... >, Args... args) -> reference |
|
template<typename std::decay_t< CT >::size_type... I, class... Args> |
auto | access_impl (std::index_sequence< I... >, Args... args) const -> const_reference |
|
template<typename std::decay_t< CT >::size_type I, class... Args> |
auto | index (Args... args) const -> std::enable_if_t< lesser_condition< I >::value, size_type > |
|
template<typename std::decay_t< CT >::size_type I, class T > |
auto | sliced_access (const xslice< T > &slice) const -> size_type |
|
template<typename std::decay_t< CT >::size_type I, class T , class Arg , class... Args> |
auto | sliced_access (const xslice< T > &slice, Arg arg, Args... args) const -> size_type |
|
template<typename std::decay_t< CT >::size_type I, class T , class... Args> |
auto | sliced_access (const T &squeeze, Args...) const -> disable_xslice< T, size_type > |
|
template<class It > |
auto | make_index (It first, It last) const -> base_index_type |
|
template<class ST , bool Enable> |
auto | stepper_begin (const ST &shape) -> std::enable_if_t<!Enable, stepper > |
|
template<class ST , bool Enable> |
auto | stepper_end (const ST &shape, layout_type l) -> std::enable_if_t<!Enable, stepper > |
|
template<class ST , bool Enable> |
auto | stepper_begin (const ST &shape) const -> std::enable_if_t<!Enable, const_stepper > |
|
template<class ST , bool Enable> |
auto | stepper_end (const ST &shape, layout_type l) const -> std::enable_if_t<!Enable, const_stepper > |
|