|
template<class S > |
| xchunked_array (chunk_storage_type &&chunks, S &&shape, S &&chunk_shape, layout_type chunk_memory_layout=::xt::layout_type::row_major) |
|
| xchunked_array (const xchunked_array &)=default |
|
xchunked_array & | operator= (const xchunked_array &)=default |
|
| xchunked_array (xchunked_array &&)=default |
|
xchunked_array & | operator= (xchunked_array &&)=default |
|
template<class E > |
| xchunked_array (const xexpression< E > &e, chunk_storage_type &&chunks, layout_type chunk_memory_layout=::xt::layout_type::row_major) |
|
template<class E , class S > |
| xchunked_array (const xexpression< E > &e, chunk_storage_type &&chunks, S &&chunk_shape, layout_type chunk_memory_layout=::xt::layout_type::row_major) |
|
template<class E > |
xchunked_array & | operator= (const xexpression< E > &e) |
|
size_type | dimension () const noexcept |
|
const shape_type & | shape () const noexcept |
|
layout_type | layout () const noexcept |
|
bool | is_contiguous () const noexcept |
|
template<class... Idxs> |
reference | operator() (Idxs... idxs) |
|
template<class... Idxs> |
const_reference | operator() (Idxs... idxs) const |
|
template<class It > |
reference | element (It first, It last) |
|
template<class It > |
const_reference | element (It first, It last) const |
|
template<class S > |
bool | broadcast_shape (S &s, bool reuse_cache=false) const |
|
template<class S > |
bool | has_linear_assign (const S &strides) const noexcept |
|
template<class S > |
stepper | stepper_begin (const S &shape) noexcept |
|
template<class S > |
stepper | stepper_end (const S &shape, layout_type) 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) const noexcept |
|
const shape_type & | chunk_shape () const noexcept |
|
size_type | grid_size () const noexcept |
|
const grid_shape_type & | grid_shape () const noexcept |
|
chunk_storage_type & | chunks () |
|
const chunk_storage_type & | chunks () const |
|
chunk_iterator | chunk_begin () |
|
chunk_iterator | chunk_end () |
|
const_chunk_iterator | chunk_begin () const |
|
const_chunk_iterator | chunk_end () const |
|
const_chunk_iterator | chunk_cbegin () const |
|
const_chunk_iterator | chunk_cend () const |
|
template<class S > |
| xchunked_array (CS &&chunks, S &&shape, S &&chunk_shape, layout_type chunk_memory_layout) |
|
template<class E > |
| xchunked_array (const xexpression< E > &e, CS &&chunks, layout_type chunk_memory_layout) |
|
template<class E , class S > |
| xchunked_array (const xexpression< E > &e, CS &&chunks, S &&chunk_shape, layout_type chunk_memory_layout) |
|
template<class E > |
auto | operator= (const xexpression< E > &e) -> self_type & |
|
template<class... Idxs> |
auto | operator() (Idxs... idxs) -> reference |
|
template<class... Idxs> |
auto | operator() (Idxs... idxs) const -> const_reference |
|
template<class It > |
auto | element (It first, It last) -> reference |
|
template<class It > |
auto | element (It first, It last) const -> const_reference |
|
template<class S > |
auto | stepper_begin (const S &shape) noexcept -> stepper |
|
template<class S > |
auto | stepper_end (const S &shape, layout_type) 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) const noexcept -> const_stepper |
|
template<class... Idxs> |
auto | get_indexes (Idxs... idxs) const -> indexes_type< Idxs... > |
|
template<std::size_t... dims, class... Idxs> |
auto | get_chunk_indexes (std::index_sequence< dims... >, Idxs... idxs) const -> chunk_indexes_type< Idxs... > |
|
template<class T , std::size_t N> |
auto | unpack (const std::array< T, N > &arr) const -> static_indexes_type< N > |
|
template<class It > |
auto | get_indexes_dynamic (It first, It last) const -> dynamic_indexes_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).
|
|
layout_iterator< L > | begin () noexcept |
|
broadcast_iterator< S, L > | begin (const S &shape) noexcept |
|
const_layout_iterator< L > | begin () const noexcept |
|
const_broadcast_iterator< S, L > | begin (const S &shape) const noexcept |
|
auto | begin () const noexcept -> const_layout_iterator< L > |
| Returns a constant iterator to the first element of the expression.
|
|
auto | begin (const S &shape) const noexcept -> const_broadcast_iterator< S, L > |
| Returns a constant iterator to the first element of the expression.
|
|
layout_iterator< L > | end () noexcept |
|
broadcast_iterator< S, L > | end (const S &shape) noexcept |
|
const_layout_iterator< L > | end () const noexcept |
|
const_broadcast_iterator< S, L > | end (const S &shape) const noexcept |
|
auto | end () const noexcept -> const_layout_iterator< L > |
| Returns a constant iterator to the element following the last element of the expression.
|
|
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.
|
|
reverse_layout_iterator< L > | rbegin () noexcept |
|
reverse_broadcast_iterator< S, L > | rbegin (const S &shape) noexcept |
|
const_reverse_layout_iterator< L > | rbegin () const noexcept |
|
const_reverse_broadcast_iterator< S, L > | rbegin (const S &shape) const noexcept |
|
auto | rbegin () const noexcept -> const_reverse_layout_iterator< L > |
| Returns a constant iterator to the first element of the reversed expression.
|
|
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.
|
|
reverse_layout_iterator< L > | rend () noexcept |
|
reverse_broadcast_iterator< S, L > | rend (const S &shape) noexcept |
|
const_reverse_layout_iterator< L > | rend () const noexcept |
|
const_reverse_broadcast_iterator< S, L > | rend (const S &shape) const noexcept |
|
auto | rend () const noexcept -> const_reverse_layout_iterator< L > |
| Returns a constant iterator to the element following the last element of the reversed expression.
|
|
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.
|
|
auto | begin () noexcept -> layout_iterator< L > |
| Returns an iterator to the first element of the expression.
|
|
auto | end () noexcept -> layout_iterator< L > |
| Returns an iterator to the element following the last element of the expression.
|
|
auto | begin (const S &shape) noexcept -> broadcast_iterator< S, L > |
| Returns an iterator to the first element of the expression.
|
|
auto | end (const S &shape) noexcept -> broadcast_iterator< S, L > |
| Returns an iterator to the element following the last element of the expression.
|
|
auto | rbegin () noexcept -> reverse_layout_iterator< L > |
| Returns an iterator to the first element of the reversed expression.
|
|
auto | rend () noexcept -> reverse_layout_iterator< L > |
| Returns an iterator to the element following the last element of the reversed expression.
|
|
auto | rbegin (const S &shape) noexcept -> reverse_broadcast_iterator< S, L > |
| Returns an iterator to the first element of the reversed expression.
|
|
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.
|
|
auto | get_begin (bool end_index) noexcept -> layout_iterator< L > |
|
auto | get_begin (const S &shape, bool end_index) noexcept -> broadcast_iterator< S, L > |
|
auto | get_end (bool end_index) noexcept -> layout_iterator< L > |
|
auto | get_end (const S &shape, bool end_index) noexcept -> broadcast_iterator< S, L > |
|
auto | get_stepper_begin (const S &shape) noexcept -> stepper |
|
auto | get_stepper_begin (const S &shape) const noexcept -> const_stepper |
|
auto | get_stepper_end (const S &shape, layout_type l) noexcept -> stepper |
|
auto | get_stepper_end (const S &shape, layout_type l) const noexcept -> const_stepper |
|
template<layout_type L = ::xt::layout_type::row_major> |
const_layout_iterator< L > | begin () const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major> |
const_layout_iterator< L > | end () const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major> |
const_layout_iterator< L > | cbegin () const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major> |
const_layout_iterator< L > | cend () const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major> |
const_reverse_layout_iterator< L > | rbegin () const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major> |
const_reverse_layout_iterator< L > | rend () const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major> |
const_reverse_layout_iterator< L > | crbegin () const noexcept |
|
template<layout_type L = ::xt::layout_type::row_major> |
const_reverse_layout_iterator< L > | crend () const 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 > |
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 () const noexcept -> const_layout_iterator< L > |
| Returns a constant iterator to the first element of the expression.
|
|
template<layout_type L> |
auto | end () const noexcept -> const_layout_iterator< L > |
| Returns a constant iterator to the element following the last element of the expression.
|
|
template<layout_type L> |
auto | cbegin () const noexcept -> const_layout_iterator< L > |
| Returns a constant iterator to the first element of the expression.
|
|
template<layout_type L> |
auto | cend () const noexcept -> const_layout_iterator< L > |
| Returns a constant iterator to the element following the last element of the expression.
|
|
template<layout_type L> |
auto | rbegin () const noexcept -> const_reverse_layout_iterator< L > |
| Returns a constant iterator to the first element of the reversed expression.
|
|
template<layout_type L> |
auto | rend () const noexcept -> const_reverse_layout_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 -> const_reverse_layout_iterator< L > |
| Returns a constant iterator to the first element of the reversed expression.
|
|
template<layout_type L> |
auto | crend () const noexcept -> const_reverse_layout_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) 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) 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.
|
|
template<layout_type L> |
auto | get_cbegin (bool end_index) const noexcept -> const_layout_iterator< L > |
|
template<layout_type L> |
auto | get_cend (bool end_index) const noexcept -> const_layout_iterator< L > |
|
template<layout_type L, class S > |
auto | get_cbegin (const S &shape, bool end_index) const noexcept -> const_broadcast_iterator< S, L > |
|
template<layout_type L, class S > |
auto | get_cend (const S &shape, bool end_index) const noexcept -> const_broadcast_iterator< S, L > |
|
template<class S > |
auto | get_stepper_begin (const S &shape) const noexcept -> const_stepper |
|
template<class S > |
auto | get_stepper_end (const S &shape, layout_type l) const noexcept -> const_stepper |
|
derived_type & | assign_xexpression (const xexpression< E > &e) |
|
auto | assign_xexpression (const xexpression< E > &e) -> derived_type & |
|
derived_type & | computed_assign (const xexpression< E > &e) |
|
auto | computed_assign (const xexpression< E > &e) -> derived_type & |
|
derived_type & | scalar_computed_assign (const E &e, F &&f) |
|
auto | scalar_computed_assign (const E &e, F &&f) -> derived_type & |
|
auto | operator= (const xexpression< E > &e) -> derived_type & |
|
auto | get_assigner (const CS &) const -> xchunked_assigner< temporary_type, CS > |
|
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 & |
|