|
| reference | at (Args... args) |
| | Returns a reference to the element at the specified position in the expression, after dimension and bounds checking.
|
| const_reference | at (Args... args) const |
| | 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) |
| | Returns a reference to the element at the specified position in the expression.
|
|
reference | operator[] (std::initializer_list< I > index) |
|
reference | operator[] (size_type i) |
| disable_integral_t< S, const_reference > | operator[] (const S &index) const |
| | Returns a constant reference to the element at the specified position in the expression.
|
|
const_reference | operator[] (std::initializer_list< I > index) const |
|
const_reference | operator[] (size_type i) const |
|
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.
|
| reference | periodic (Args... args) |
| | 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 |
| | 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).
|
| auto | data_element (size_type i) -> decltype(std::declval< FCT >()(std::declval< undecay_expression >().data_element(i))) |
| auto | flat (size_type i) -> decltype(std::declval< FCT >()(std::declval< undecay_expression >().flat(i))) |
| auto | load_simd (size_type i) const -> decltype(std::declval< FCT >().template proxy_simd_load< align, requested_type, N >(std::declval< undecay_expression >(), i)) |
| auto | store_simd (size_type i, const simd &e) -> decltype(std::declval< FCT >() .template proxy_simd_store< align >(std::declval< undecay_expression >(), i, e)) |
| | xfunctor_applier_base (undecay_expression) noexcept |
| | Constructs an xfunctor_applier_base expression wrappering the specified xt::xexpression.
|
| size_type | size () const noexcept |
| | Returns the size of the expression.
|
| const inner_shape_type & | shape () const noexcept |
| | Returns the shape of the expression.
|
| const inner_strides_type & | strides () const noexcept |
| | Returns the strides of the expression.
|
| const inner_backstrides_type & | backstrides () const noexcept |
| | Returns the backstrides of the expression.
|
| layout_type | layout () const noexcept |
| | Returns the layout_type of the expression.
|
| bool | is_contiguous () const noexcept |
| reference | operator() (Args... args) |
| | Returns a reference to the element at the specified position in the expression.
|
| reference | unchecked (Args... args) |
| | Returns a reference to the element at the specified position in the expression.
|
| reference | element (IT first, IT last) |
| | Returns a reference to the element at the specified position in the expression.
|
| xexpression_type & | expression () noexcept |
| | Returns a reference to the underlying expression of the view.
|
| bool | broadcast_shape (S &shape, bool reuse_cache=false) const |
| | Broadcast the shape of the function to the specified parameter.
|
| bool | has_linear_assign (const S &strides) const |
| | Checks whether the xfunctor_applier_base can be linearly assigned to an expression with the specified strides.
|
| auto | begin () noexcept |
| | Returns an iterator to the first element of the expression.
|
| auto | end () noexcept |
| | Returns an iterator to the element following the last element of the expression.
|
| auto | cbegin () const noexcept |
| | Returns a constant iterator to the first element of the expression.
|
| auto | cend () const noexcept |
| | Returns a constant iterator to the element following the last element of the expression.
|
| auto | rbegin () noexcept |
| | Returns an iterator to the first element of the reversed expression.
|
| auto | rend () noexcept |
| | Returns an iterator to the element following the last element of the reversed expression.
|
| auto | crbegin () const noexcept |
| | Returns a constant iterator to the first element of the reversed expression.
|
| auto | crend () const noexcept |
| | Returns a constant iterator to the element following the last element of the reversed expression.
|
| linear_iterator | linear_begin () noexcept |
| linear_iterator | linear_end () 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_crbegin () const noexcept |
| const_reverse_linear_iterator | linear_crend () const noexcept |
| stepper | stepper_begin (const S &shape) noexcept |
| stepper | stepper_end (const S &shape, layout_type l) noexcept |
| derived_type & | assign_temporary (temporary_type &&) |
| | Assigns the temporary tmp to *this.
|
| 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) |
| disable_xexpression< E, derived_type & > | operator+= (const E &) |
| | Adds the scalar e to *this.
|
| disable_xexpression< E, derived_type & > | operator-= (const E &) |
| | Subtracts the scalar e from *this.
|
| disable_xexpression< E, derived_type & > | operator*= (const E &) |
| | Multiplies *this with the scalar e.
|
| disable_xexpression< E, derived_type & > | operator/= (const E &) |
| | Divides *this by the scalar e.
|
| disable_xexpression< E, derived_type & > | operator%= (const E &) |
| | Computes the remainder of *this after division by the scalar e.
|
| disable_xexpression< E, derived_type & > | operator&= (const E &) |
| | Computes the bitwise and of *this and the scalar e and assigns it to *this.
|
| disable_xexpression< E, derived_type & > | operator|= (const E &) |
| | Computes the bitwise or of *this and the scalar e and assigns it to *this.
|
| disable_xexpression< E, derived_type & > | operator^= (const E &) |
| | Computes the bitwise xor of *this and the scalar e and assigns it to *this.
|
| derived_type & | assign (const xexpression< E > &) |
| | Assigns the xexpression e to *this.
|
| derived_type & | plus_assign (const xexpression< E > &) |
| | Adds the xexpression e to *this.
|
| derived_type & | minus_assign (const xexpression< E > &) |
| | Subtracts the xexpression e to *this.
|
| derived_type & | multiplies_assign (const xexpression< E > &) |
| | Multiplies *this with the xexpression e.
|
| derived_type & | divides_assign (const xexpression< E > &) |
| | Divides *this by the xexpression e.
|
| derived_type & | modulus_assign (const xexpression< E > &) |
| | Computes the remainder of *this after division by the xexpression e.
|
| derived_type & | bit_and_assign (const xexpression< E > &) |
| | Computes the bitwise and of e to *this.
|
| derived_type & | bit_or_assign (const xexpression< E > &) |
| | Computes the bitwise or of e to *this.
|
| derived_type & | bit_xor_assign (const xexpression< E > &) |
| | Computes the bitwise xor of e to *this.
|
| static constexpr layout_type | static_layout |
| static constexpr bool | contiguous_layout |
|
xview_semantic & | operator= (const xview_semantic &)=default |
|
xsemantic_base & | operator= (const xsemantic_base &)=default |
| undecay_expression | m_e |
| functor_type | m_functor |
template<class F, class CT>
class xt::xfunctor_view< F, CT >
View of an xexpression .
The xt::xfunctor_view class is an expression addressing its elements by applying a functor to the corresponding element of an underlying expression. Unlike e.g. xgenerator, an xt::xfunctor_view is an lvalue. It is used e.g. to access real and imaginary parts of complex expressions.
xt::xfunctor_view has a view semantics and can be used on any expression. For a similar feature with a container semantics, one can use xt::xfunctor_adaptor.
xt::xfunctor_view is not meant to be used directly, but through helper functions such as xt::real or xt::imag.
- Template Parameters
-
| F | the functor type to be applied to the elements of specified expression. |
| CT | the closure type of the xt::xexpression type underlying this view |
- See also
- xt::real, xt::imag
Definition at line 440 of file xfunctor_view.hpp.