Dense multidimensional container adaptor with view semantics and fixed dimension.
More...
|
| xtensor_view (const xtensor_view &)=default |
|
| xtensor_view (xtensor_view &&)=default |
|
template<class E > |
self_type & | operator= (const xexpression< E > &e) |
|
template<class E > |
disable_xexpression< E, self_type > & | operator= (const E &e) |
|
|
| xtensor_view (storage_type &&storage) |
| Constructs an xtensor_view of the given stl-like container.
|
|
| xtensor_view (const storage_type &storage) |
| Constructs an xtensor_view of the given stl-like container.
|
|
template<class D > |
| xtensor_view (D &&storage, const shape_type &shape, layout_type l=L) |
| Constructs an xtensor_view of the given stl-like container, with the specified shape and layout_type.
|
|
template<class D > |
| xtensor_view (D &&storage, const shape_type &shape, const strides_type &strides) |
| Constructs an xtensor_view of the given stl-like container, with the specified shape and strides.
|
|
xtensor_view & | operator= (const xtensor_view &) |
|
xtensor_view & | operator= (xtensor_view &&) |
|
void | resize (S &&shape, bool force=false) |
| Resizes the container.
|
|
void | resize (S &&shape, layout_type l) |
| Resizes the container.
|
|
void | resize (S &&shape, const strides_type &strides) |
| Resizes the container.
|
|
auto & | reshape (S &&shape, layout_type layout=base_type::static_layout) & |
| Reshapes the container and keeps old elements.
|
|
auto & | reshape (std::initializer_list< T > shape, layout_type layout=base_type::static_layout) & |
|
layout_type | layout () const noexcept |
| Return the layout_type of the container.
|
|
bool | is_contiguous () const noexcept |
|
template<class... Args> |
reference | operator() (Args... args) |
|
template<class... Args> |
const_reference | operator() (Args... args) const |
|
template<class... Args> |
reference | unchecked (Args... args) |
|
template<class... Args> |
const_reference | unchecked (Args... args) const |
|
template<class It > |
reference | element (It first, It last) |
|
template<class It > |
const_reference | element (It first, It last) const |
|
template<class S > |
stepper | stepper_begin (const S &shape) noexcept |
|
template<class S > |
stepper | stepper_end (const S &shape, layout_type l) noexcept |
|
template<class S > |
const_stepper | stepper_begin (const S &shape) const noexcept |
|
template<class S > |
const_stepper | stepper_end (const S &shape, layout_type l) const noexcept |
|
template<class align , class requested_type = value_type, std::size_t N = xt_simd::simd_traits<requested_type>::size> |
container_simd_return_type_t< storage_type, value_type, requested_type > | load_simd (size_type i) const |
|
template<class... Args> |
reference | at (Args... args) |
|
template<class... Args> |
auto | at (Args... args) -> reference |
| Returns a reference to the element at the specified position in the expression, after dimension and bounds checking.
|
|
template<class... Args> |
const_reference | at (Args... args) const |
|
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.
|
|
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.
|
|
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.
|
|
template<class... Args> |
reference | periodic (Args... args) |
|
template<class... 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).
|
|
template<class... Args> |
const_reference | periodic (Args... args) const |
|
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).
|
|
size_type | size () const noexcept |
| Returns the number of element in the container.
|
|
constexpr size_type | dimension () const noexcept |
| Returns the number of dimensions of the container.
|
|
constexpr const inner_shape_type & | shape () const noexcept |
| Returns the shape of the container.
|
|
constexpr const inner_strides_type & | strides () const noexcept |
| Returns the strides of the container.
|
|
constexpr const inner_backstrides_type & | backstrides () const noexcept |
| Returns the backstrides of the container.
|
|
template<class T > |
void | fill (const T &value) |
| Fills the container with the given value.
|
|
storage_type & | storage () noexcept |
| Returns a reference to the buffer containing the elements of the container.
|
|
const storage_type & | storage () const noexcept |
| Returns a constant reference to the buffer containing the elements of the container.
|
|
pointer | data () noexcept |
| Returns a pointer to the underlying array serving as element storage.
|
|
const_pointer | data () const noexcept |
| Returns a constant pointer to the underlying array serving as element storage.
|
|
const size_type | data_offset () const noexcept |
| Returns the offset to the first element in the container.
|
|
template<class... Args> |
auto | operator() (Args... args) -> reference |
| Returns a reference to the element at the specified position in the container.
|
|
template<class... Args> |
auto | operator() (Args... args) const -> const_reference |
| Returns a constant reference to the element at the specified position in the container.
|
|
template<class... Args> |
auto | unchecked (Args... args) -> reference |
| Returns a reference to the element at the specified position in the container.
|
|
template<class... Args> |
auto | unchecked (Args... args) const -> const_reference |
| Returns a constant reference to the element at the specified position in the container.
|
|
template<class It > |
auto | element (It first, It last) -> reference |
| Returns a reference to the element at the specified position in the container.
|
|
template<class It > |
auto | element (It first, It last) const -> const_reference |
| Returns a reference to the element at the specified position in the container.
|
|
template<class S > |
bool | broadcast_shape (S &shape, bool reuse_cache=false) const |
| Broadcast the shape of the container to the specified parameter.
|
|
template<class S > |
bool | has_linear_assign (const S &strides) const noexcept |
| Checks whether the xcontainer can be linearly assigned to an expression with the specified strides.
|
|
reference | data_element (size_type i) |
|
const_reference | data_element (size_type i) const |
|
reference | flat (size_type i) |
| Returns a reference to the element at the specified position in the container storage (as if it was one dimensional).
|
|
const_reference | flat (size_type i) const |
| Returns a constant reference to the element at the specified position in the container storage (as if it was one dimensional).
|
|
template<class align , class simd > |
void | store_simd (size_type i, const simd &e) |
|
linear_iterator | linear_begin () noexcept |
|
linear_iterator | linear_end () noexcept |
|
const_linear_iterator | linear_begin () const noexcept |
|
const_linear_iterator | linear_end () const noexcept |
|
const_linear_iterator | linear_cbegin () const noexcept |
|
const_linear_iterator | linear_cend () const noexcept |
|
reverse_linear_iterator | linear_rbegin () noexcept |
|
reverse_linear_iterator | linear_rend () noexcept |
|
const_reverse_linear_iterator | linear_rbegin () const noexcept |
|
const_reverse_linear_iterator | linear_rend () const noexcept |
|
const_reverse_linear_iterator | linear_crbegin () const noexcept |
|
const_reverse_linear_iterator | linear_crend () const noexcept |
|
template<class S > |
auto | stepper_begin (const S &shape) noexcept -> stepper |
|
template<class S > |
auto | stepper_end (const S &shape, layout_type l) noexcept -> stepper |
|
template<class S > |
auto | stepper_begin (const S &shape) const noexcept -> const_stepper |
|
template<class S > |
auto | stepper_end (const S &shape, layout_type l) const noexcept -> const_stepper |
|
template<class alignment , class requested_type , std::size_t N> |
auto | load_simd (size_type i) const -> container_simd_return_type_t< storage_type, value_type, requested_type > |
|
template<layout_type L = ::xt::layout_type::row_major> |
select_iterator< L > | begin () noexcept |
|
template<layout_type L = ::xt::layout_type::row_major> |
select_iterator< L > | end () noexcept |
|
template<layout_type L = ::xt::layout_type::row_major> |
select_const_iterator< L > | begin () const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major> |
select_const_iterator< L > | end () const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major> |
select_const_iterator< L > | cbegin () const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major> |
select_const_iterator< L > | cend () const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major> |
select_reverse_iterator< L > | rbegin () noexcept |
|
template<layout_type L = ::xt::layout_type::row_major> |
select_reverse_iterator< L > | rend () noexcept |
|
template<layout_type L = ::xt::layout_type::row_major> |
select_const_reverse_iterator< L > | rbegin () const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major> |
select_const_reverse_iterator< L > | rend () const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major> |
select_const_reverse_iterator< L > | crbegin () const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major> |
select_const_reverse_iterator< L > | crend () const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major, class S > |
broadcast_iterator< S, L > | begin (const S &shape) noexcept |
|
template<layout_type L = ::xt::layout_type::row_major, class S > |
broadcast_iterator< S, L > | end (const S &shape) noexcept |
|
template<layout_type L = ::xt::layout_type::row_major, class S > |
const_broadcast_iterator< S, L > | begin (const S &shape) const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major, class S > |
const_broadcast_iterator< S, L > | end (const S &shape) const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major, class S > |
const_broadcast_iterator< S, L > | cbegin (const S &shape) const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major, class S > |
const_broadcast_iterator< S, L > | cend (const S &shape) const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major, class S > |
reverse_broadcast_iterator< S, L > | rbegin (const S &shape) noexcept |
|
template<layout_type L = ::xt::layout_type::row_major, class S > |
reverse_broadcast_iterator< S, L > | rend (const S &shape) noexcept |
|
template<layout_type L = ::xt::layout_type::row_major, class S > |
const_reverse_broadcast_iterator< S, L > | rbegin (const S &shape) const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major, class S > |
const_reverse_broadcast_iterator< S, L > | rend (const S &shape) const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major, class S > |
const_reverse_broadcast_iterator< S, L > | crbegin (const S &shape) const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major, class S > |
const_reverse_broadcast_iterator< S, L > | crend (const S &shape) const noexcept |
|
template<layout_type L> |
auto | begin () noexcept -> select_iterator< L > |
| Returns an iterator to the first element of the expression.
|
|
template<layout_type L> |
auto | end () noexcept -> select_iterator< L > |
| Returns an iterator to the element following the last element of the expression.
|
|
template<layout_type L> |
auto | begin () const noexcept -> select_const_iterator< L > |
| Returns a constant iterator to the first element of the expression.
|
|
template<layout_type L> |
auto | end () const noexcept -> select_const_iterator< L > |
| Returns a constant iterator to the element following the last element of the expression.
|
|
template<layout_type L> |
auto | cbegin () const noexcept -> select_const_iterator< L > |
| Returns a constant iterator to the first element of the expression.
|
|
template<layout_type L> |
auto | cend () const noexcept -> select_const_iterator< L > |
| Returns a constant iterator to the element following the last element of the expression.
|
|
template<layout_type L> |
auto | rbegin () noexcept -> select_reverse_iterator< L > |
| Returns an iterator to the first element of the reversed expression.
|
|
template<layout_type L> |
auto | rend () noexcept -> select_reverse_iterator< L > |
| Returns an iterator to the element following the last element of the reversed expression.
|
|
template<layout_type L> |
auto | rbegin () const noexcept -> select_const_reverse_iterator< L > |
| Returns a constant iterator to the first element of the reversed expression.
|
|
template<layout_type L> |
auto | rend () const noexcept -> select_const_reverse_iterator< L > |
| Returns a constant iterator to the element following the last element of the reversed expression.
|
|
template<layout_type L> |
auto | crbegin () const noexcept -> select_const_reverse_iterator< L > |
| Returns a constant iterator to the first element of the reversed expression.
|
|
template<layout_type L> |
auto | crend () const noexcept -> select_const_reverse_iterator< L > |
| Returns a constant iterator to the element following the last element of the reversed expression.
|
|
template<layout_type L, class S > |
auto | begin (const S &shape) noexcept -> broadcast_iterator< S, L > |
| Returns an iterator to the first element of the expression.
|
|
template<layout_type L, class S > |
auto | end (const S &shape) noexcept -> broadcast_iterator< S, L > |
| Returns an iterator to the element following the last element of the expression.
|
|
template<layout_type L, class S > |
auto | begin (const S &shape) const noexcept -> const_broadcast_iterator< S, L > |
| Returns a constant iterator to the first element of the expression.
|
|
template<layout_type L, class S > |
auto | end (const S &shape) const noexcept -> const_broadcast_iterator< S, L > |
| Returns a constant iterator to the element following the last element of the expression.
|
|
template<layout_type L, class S > |
auto | cbegin (const S &shape) const noexcept -> const_broadcast_iterator< S, L > |
| Returns a constant iterator to the first element of the expression.
|
|
template<layout_type L, class S > |
auto | cend (const S &shape) const noexcept -> const_broadcast_iterator< S, L > |
| Returns a constant iterator to the element following the last element of the expression.
|
|
template<layout_type L, class S > |
auto | rbegin (const S &shape) noexcept -> reverse_broadcast_iterator< S, L > |
| Returns an iterator to the first element of the reversed expression.
|
|
template<layout_type L, class S > |
auto | rend (const S &shape) noexcept -> reverse_broadcast_iterator< S, L > |
| Returns an iterator to the element following the last element of the reversed expression.
|
|
template<layout_type L, class S > |
auto | rbegin (const S &shape) const noexcept -> const_reverse_broadcast_iterator< S, L > |
| Returns a constant iterator to the first element of the reversed expression.
|
|
template<layout_type L, class S > |
auto | rend (const S &shape) const noexcept -> const_reverse_broadcast_iterator< S, L > |
| Returns a constant iterator to the element following the last element of the reversed expression.
|
|
template<layout_type L, class S > |
auto | crbegin (const S &shape) const noexcept -> const_reverse_broadcast_iterator< S, L > |
| Returns a constant iterator to the first element of the reversed expression.
|
|
template<layout_type L, class S > |
auto | crend (const S &shape) const noexcept -> const_reverse_broadcast_iterator< S, L > |
| Returns a constant iterator to the element following the last element of the reversed expression.
|
|
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 & |
|