|
|
| 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> |
| stepper | stepper_begin (const ST &shape) |
| |
|
template<class ST> |
| stepper | stepper_end (const ST &shape, layout_type l) |
| |
|
template<class ST> |
| const_stepper | stepper_begin (const ST &shape) const |
| |
|
template<class ST> |
| const_stepper | stepper_end (const ST &shape, layout_type l) const |
| |
template<class T = xexpression_type>
requires (has_data_interface_concept<T>) |
| storage_type & | storage () |
| |
template<class T = xexpression_type>
requires (has_data_interface_concept<T>) |
| const storage_type & | storage () const |
| |
template<class T = xexpression_type>
requires (has_data_interface_concept<T> and strided_view_concept<CT, S...>) |
| linear_iterator | linear_begin () |
| |
template<class T = xexpression_type>
requires (has_data_interface_concept<T> and strided_view_concept<CT, S...>) |
| linear_iterator | linear_end () |
| |
template<class T = xexpression_type>
requires (has_data_interface_concept<T> and strided_view_concept<CT, S...>) |
| const_linear_iterator | linear_begin () const |
| |
template<class T = xexpression_type>
requires (has_data_interface_concept<T> and strided_view_concept<CT, S...>) |
| const_linear_iterator | linear_end () const |
| |
template<class T = xexpression_type>
requires (has_data_interface_concept<T> and strided_view_concept<CT, S...>) |
| const_linear_iterator | linear_cbegin () const |
| |
template<class T = xexpression_type>
requires (has_data_interface_concept<T> and strided_view_concept<CT, S...>) |
| const_linear_iterator | linear_cend () const |
| |
template<class T = xexpression_type>
requires (has_data_interface_concept<T> and strided_view_concept<CT, S...>) |
| reverse_linear_iterator | linear_rbegin () |
| |
template<class T = xexpression_type>
requires (has_data_interface_concept<T> and strided_view_concept<CT, S...>) |
| reverse_linear_iterator | linear_rend () |
| |
template<class T = xexpression_type>
requires (has_data_interface_concept<T> and strided_view_concept<CT, S...>) |
| const_reverse_linear_iterator | linear_rbegin () const |
| |
template<class T = xexpression_type>
requires (has_data_interface_concept<T> and strided_view_concept<CT, S...>) |
| const_reverse_linear_iterator | linear_rend () const |
| |
template<class T = xexpression_type>
requires (has_data_interface_concept<T> and strided_view_concept<CT, S...>) |
| const_reverse_linear_iterator | linear_crbegin () const |
| |
template<class T = xexpression_type>
requires (has_data_interface_concept<T> and strided_view_concept<CT, S...>) |
| const_reverse_linear_iterator | linear_crend () const |
| |
template<class T = xexpression_type>
requires (has_data_interface_concept<T> and strided_view_concept<CT, S...>) |
| const inner_strides_type & | strides () const |
| |
template<class T = xexpression_type>
requires (has_data_interface_concept<T> and strided_view_concept<CT, S...>) |
| const inner_strides_type & | backstrides () const |
| |
template<class T = xexpression_type>
requires (has_data_interface_concept<T> and strided_view_concept<CT, S...>) |
| const_pointer | data () const |
| |
template<class T = xexpression_type>
requires (has_data_interface_concept<T> and strided_view_concept<CT, S...>) |
| pointer | data () |
| |
| template<xscalar_concept ST = self_type> |
| | operator reference () |
| |
| template<xscalar_concept ST = self_type> |
| | operator const_reference () const |
| |
|
template<class E> |
| rebind_t< E > | build_view (E &&e) const |
| |
template<class align, class simd, class T = xexpression_type>
requires (has_simd_interface_concept<T> and strided_view_concept<CT, S...>) |
| 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>
requires (has_simd_interface_concept<T> and strided_view_concept<CT, S...>) |
| simd_return_type< requested_type > | load_simd (size_type i) const |
| |
template<class T = xexpression_type>
requires (has_simd_interface_concept<T> and strided_view_concept<CT, S...>) |
| reference | data_element (size_type i) |
| |
template<class T = xexpression_type>
requires (has_simd_interface_concept<T> and strided_view_concept<CT, S...>) |
| const_reference | data_element (size_type i) const |
| |
template<class T = xexpression_type>
requires (has_simd_interface_concept<T> and strided_view_concept<CT, S...>) |
| reference | flat (size_type i) |
| |
template<class T = xexpression_type>
requires (has_simd_interface_concept<T> and strided_view_concept<CT, S...>) |
| 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) |
| |
| 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 & |
| |
| 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 & |
| |
|
disable_xexpression< E, derived_type & > | operator+= (const E &) |
| |
|
derived_type & | operator+= (const xexpression< E > &) |
| |
|
disable_xexpression< E, derived_type & > | operator-= (const E &) |
| |
|
derived_type & | operator-= (const xexpression< E > &) |
| |
|
disable_xexpression< E, derived_type & > | operator*= (const E &) |
| |
|
derived_type & | operator*= (const xexpression< E > &) |
| |
|
disable_xexpression< E, derived_type & > | operator/= (const E &) |
| |
|
derived_type & | operator/= (const xexpression< E > &) |
| |
|
disable_xexpression< E, derived_type & > | operator%= (const E &) |
| |
|
derived_type & | operator%= (const xexpression< E > &) |
| |
|
disable_xexpression< E, derived_type & > | operator&= (const E &) |
| |
|
derived_type & | operator&= (const xexpression< E > &) |
| |
|
disable_xexpression< E, derived_type & > | operator|= (const E &) |
| |
|
derived_type & | operator|= (const xexpression< E > &) |
| |
|
disable_xexpression< E, derived_type & > | operator^= (const E &) |
| |
|
derived_type & | operator^= (const xexpression< E > &) |
| |
|
derived_type & | assign (const xexpression< E > &) |
| |
|
derived_type & | plus_assign (const xexpression< E > &) |
| |
|
derived_type & | minus_assign (const xexpression< E > &) |
| |
|
derived_type & | multiplies_assign (const xexpression< E > &) |
| |
|
derived_type & | divides_assign (const xexpression< E > &) |
| |
|
derived_type & | modulus_assign (const xexpression< E > &) |
| |
|
derived_type & | bit_and_assign (const xexpression< E > &) |
| |
|
derived_type & | bit_or_assign (const xexpression< E > &) |
| |
|
derived_type & | bit_xor_assign (const xexpression< E > &) |
| |
| auto | operator+= (const E &e) -> disable_xexpression< E, derived_type & > |
| | Adds the scalar e to *this.
|
| |
| auto | operator-= (const E &e) -> disable_xexpression< E, derived_type & > |
| | Subtracts the scalar e from *this.
|
| |
| auto | operator*= (const E &e) -> disable_xexpression< E, derived_type & > |
| | Multiplies *this with the scalar e.
|
| |
| auto | operator/= (const E &e) -> disable_xexpression< E, derived_type & > |
| | Divides *this by the scalar e.
|
| |
| auto | operator%= (const E &e) -> disable_xexpression< E, derived_type & > |
| | Computes the remainder of *this after division by the scalar 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.
|
| |
| 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.
|
| |
| 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.
|
| |
| auto | operator+= (const xexpression< E > &e) -> derived_type & |
| | Adds the xexpression e to *this.
|
| |
| auto | operator-= (const xexpression< E > &e) -> derived_type & |
| | Subtracts the xexpression e from *this.
|
| |
| auto | operator*= (const xexpression< E > &e) -> derived_type & |
| | Multiplies *this with the xexpression e.
|
| |
| auto | operator/= (const xexpression< E > &e) -> derived_type & |
| | Divides *this by the xexpression e.
|
| |
| auto | operator%= (const xexpression< E > &e) -> derived_type & |
| | Computes the remainder of *this after division by the xexpression e.
|
| |
| auto | operator&= (const xexpression< E > &e) -> derived_type & |
| | Computes the bitwise and of *this and the xexpression e and assigns it to *this.
|
| |
| auto | operator|= (const xexpression< E > &e) -> derived_type & |
| | Computes the bitwise or of *this and the xexpression e and assigns it to *this.
|
| |
| auto | operator^= (const xexpression< E > &e) -> derived_type & |
| | Computes the bitwise xor of *this and the xexpression e and assigns it to *this.
|
| |
| auto | operator+= (const E &e) -> disable_xexpression< E, derived_type & > |
| | Adds the scalar e to *this.
|
| |
| auto | operator+= (const xexpression< E > &e) -> derived_type & |
| | Adds the xexpression e to *this.
|
| |
| auto | operator-= (const E &e) -> disable_xexpression< E, derived_type & > |
| | Subtracts the scalar e from *this.
|
| |
| auto | operator-= (const xexpression< E > &e) -> derived_type & |
| | Subtracts the xexpression e from *this.
|
| |
| auto | operator*= (const E &e) -> disable_xexpression< E, derived_type & > |
| | Multiplies *this with the scalar e.
|
| |
| auto | operator*= (const xexpression< E > &e) -> derived_type & |
| | Multiplies *this with the xexpression e.
|
| |
| auto | operator/= (const E &e) -> disable_xexpression< E, derived_type & > |
| | Divides *this by the scalar e.
|
| |
| auto | operator/= (const xexpression< E > &e) -> derived_type & |
| | Divides *this by the xexpression e.
|
| |
| auto | operator%= (const E &e) -> disable_xexpression< E, derived_type & > |
| | Computes the remainder of *this after division by the scalar e.
|
| |
| auto | operator%= (const xexpression< E > &e) -> derived_type & |
| | Computes the remainder of *this after division by the xexpression 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.
|
| |
| auto | operator&= (const xexpression< E > &e) -> derived_type & |
| | Computes the bitwise and of *this and the xexpression e and assigns it to *this.
|
| |
| 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.
|
| |
| auto | operator|= (const xexpression< E > &e) -> derived_type & |
| | Computes the bitwise or of *this and the xexpression e and assigns it to *this.
|
| |
| 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.
|
| |
| auto | operator^= (const xexpression< E > &e) -> derived_type & |
| | Computes the bitwise xor of *this and the xexpression e and assigns it to *this.
|
| |
| auto | assign (const xexpression< E > &e) -> derived_type & |
| | Assigns the xexpression e to *this.
|
| |
| auto | plus_assign (const xexpression< E > &e) -> derived_type & |
| | Adds the xexpression e to *this.
|
| |
| auto | minus_assign (const xexpression< E > &e) -> derived_type & |
| | Subtracts the xexpression e to *this.
|
| |
| auto | multiplies_assign (const xexpression< E > &e) -> derived_type & |
| | Multiplies *this with the xexpression e.
|
| |
| auto | divides_assign (const xexpression< E > &e) -> derived_type & |
| | Divides *this by the xexpression e.
|
| |
| auto | modulus_assign (const xexpression< E > &e) -> derived_type & |
| | Computes the remainder of *this after division by the xexpression e.
|
| |
| auto | bit_and_assign (const xexpression< E > &e) -> derived_type & |
| | Computes the bitwise and of e to *this.
|
| |
| auto | bit_or_assign (const xexpression< E > &e) -> derived_type & |
| | Computes the bitwise or of e to *this.
|
| |
| auto | bit_xor_assign (const xexpression< E > &e) -> derived_type & |
| | Computes the bitwise xor of e to *this.
|
| |
| auto | operator= (const xexpression< E > &e) -> derived_type & |
| |
| auto | assign (const xexpression< E > &e) -> derived_type & |
| | Assigns the xexpression e to *this.
|
| |
| auto | plus_assign (const xexpression< E > &e) -> derived_type & |
| | Adds the xexpression e to *this.
|
| |
| auto | minus_assign (const xexpression< E > &e) -> derived_type & |
| | Subtracts the xexpression e to *this.
|
| |
| auto | multiplies_assign (const xexpression< E > &e) -> derived_type & |
| | Multiplies *this with the xexpression e.
|
| |
| auto | divides_assign (const xexpression< E > &e) -> derived_type & |
| | Divides *this by the xexpression e.
|
| |
| auto | modulus_assign (const xexpression< E > &e) -> derived_type & |
| | Computes the remainder of *this after division by the xexpression e.
|
| |
| auto | bit_and_assign (const xexpression< E > &e) -> derived_type & |
| | Computes the bitwise and of e to *this.
|
| |
| auto | bit_or_assign (const xexpression< E > &e) -> derived_type & |
| | Computes the bitwise or of e to *this.
|
| |
| auto | bit_xor_assign (const xexpression< E > &e) -> derived_type & |
| | Computes the bitwise xor of e to *this.
|
| |
| auto | operator= (const xexpression< E > &e) -> derived_type & |
| |
| auto | at (Args... args) -> reference |
| | Returns a reference to the element at the specified position in the expression, after dimension and bounds checking.
|
| |
| 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 |
| |
| 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 | at (Args... args) const |
| |
|
disable_integral_t< S, const_reference > | operator[] (const S &index) const |
| |
|
const_reference | operator[] (std::initializer_list< I > index) const |
| |
|
const_reference | operator[] (size_type i) const |
| |
|
const_reference | back () const |
| | Returns a constant reference to last the element of the expression.
|
| |
|
const_reference | front () const |
| | Returns a constant reference to first the element of the expression.
|
| |
|
const_reference | periodic (Args... args) const |
| |
|
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 |
| |
|
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 |
| |
|
disable_integral_t< S, const_reference > | operator[] (const S &index) const |
| |
|
const_reference | operator[] (std::initializer_list< I > index) const |
| |
| const_reference | operator[] (size_type i) const |
| |
|
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 |
| |
| 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.
|
| |
| 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.
|
| |
| 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.
|
| |
| auto | operator[] (std::initializer_list< I > index) const -> const_reference |
| |
| 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).
|
| |
| size_type | size () const noexcept(noexcept(derived_cast().shape())) |
| | 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.
|
| |
|
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, const_reference > | operator[] (const S &index) const |
| |
|
const_reference | operator[] (std::initializer_list< I > index) const |
| |
| const_reference | operator[] (size_type i) const |
| |
| 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.
|
| |
| auto | operator[] (std::initializer_list< I > index) const -> const_reference |
| |
|
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).
|
| |
| 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 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>
requires (has_data_interface_concept<T> and contiguous_view_concept<E, S...>) |
| 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) -> void requires(has_simd_interface_concept< T > and strided_view_concept< CT, S... >) |
| |
| template<class align, class requested_type, std::size_t N, class T> |
| auto | load_simd (size_type i) const -> simd_return_type< requested_type > requires(has_simd_interface_concept< T > and strided_view_concept< CT, S... >) |
| |
| template<class T> |
| auto | data_element (size_type i) -> reference requires(has_simd_interface_concept< T > and strided_view_concept< CT, S... >) |
| |
| template<class T> |
| auto | data_element (size_type i) const -> const_reference requires(has_simd_interface_concept< T > and strided_view_concept< CT, S... >) |
| |
| template<class T> |
| auto | flat (size_type i) -> reference requires(has_simd_interface_concept< T > and strided_view_concept< CT, S... >) |
| |
| template<class T> |
| auto | flat (size_type i) const -> const_reference requires(has_simd_interface_concept< T > and strided_view_concept< CT, S... >) |
| |
| 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 -> 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 -> size_type requires(!is_xslice< T >::value) |
| |
| template<class It> |
| auto | make_index (It first, It last) const -> base_index_type |
| |
| template<class ST> |
| auto | stepper_begin (const ST &shape) -> stepper |
| |
| template<class ST> |
| auto | stepper_end (const ST &shape, layout_type l) -> stepper |
| |
| template<class ST> |
| auto | stepper_begin (const ST &shape) const -> const_stepper |
| |
| template<class ST> |
| auto | stepper_end (const ST &shape, layout_type l) const -> const_stepper |
| |