xsemantic_base

Defined in xtensor/xsemantic.hpp

template <class D>
class xt::xsemantic_base

Base interface for assignable xexpressions.

The xsemantic_base class defines the interface for assignable xexpressions.

Template Parameters
  • D: The derived type, i.e. the inheriting class for which xsemantic_base provides the interface.

Inherits from xt::xexpression< D >

Subclassed by xt::xcontainer_semantic< D >, xt::xview_semantic< D >

Computed assignement

template <class E>
auto xt::xsemantic_baseoperator+=(const E &e)

Adds the scalar e to *this.

Return
a reference to *this.
Parameters
  • e: the scalar to add.

template <class E>
auto xt::xsemantic_baseoperator-=(const E &e)

Subtracts the scalar e from *this.

Return
a reference to *this.
Parameters
  • e: the scalar to subtract.

template <class E>
auto xt::xsemantic_baseoperator*=(const E &e)

Multiplies *this with the scalar e.

Return
a reference to *this.
Parameters
  • e: the scalar involved in the operation.

template <class E>
auto xt::xsemantic_baseoperator/=(const E &e)

Divides *this by the scalar e.

Return
a reference to *this.
Parameters
  • e: the scalar involved in the operation.

template <class E>
auto xt::xsemantic_baseoperator%=(const E &e)

Computes the remainder of *this after division by the scalar e.

Return
a reference to *this.
Parameters
  • e: the scalar involved in the operation.

template <class E>
auto xt::xsemantic_baseoperator&=(const E &e)

Computes the bitwise and of *this and the scalar e and assigns it to *this.

Return
a reference to *this.
Parameters
  • e: the scalar involved in the operation.

template <class E>
auto xt::xsemantic_baseoperator|=(const E &e)

Computes the bitwise or of *this and the scalar e and assigns it to *this.

Return
a reference to *this.
Parameters
  • e: the scalar involved in the operation.

template <class E>
auto xt::xsemantic_baseoperator^=(const E &e)

Computes the bitwise xor of *this and the scalar e and assigns it to *this.

Return
a reference to *this.
Parameters
  • e: the scalar involved in the operation.

template <class E>
auto xt::xsemantic_baseoperator+=(const xexpression<E> &e)

Adds the xexpression e to *this.

Return
a reference to *this.
Parameters
  • e: the xexpression to add.

template <class E>
auto xt::xsemantic_baseoperator-=(const xexpression<E> &e)

Subtracts the xexpression e from *this.

Return
a reference to *this.
Parameters
  • e: the xexpression to subtract.

template <class E>
auto xt::xsemantic_baseoperator*=(const xexpression<E> &e)

Multiplies *this with the xexpression e.

Return
a reference to *this.
Parameters
  • e: the xexpression involved in the operation.

template <class E>
auto xt::xsemantic_baseoperator/=(const xexpression<E> &e)

Divides *this by the xexpression e.

Return
a reference to *this.
Parameters
  • e: the xexpression involved in the operation.

template <class E>
auto xt::xsemantic_baseoperator%=(const xexpression<E> &e)

Computes the remainder of *this after division by the xexpression e.

Return
a reference to *this.
Parameters
  • e: the xexpression involved in the operation.

template <class E>
auto xt::xsemantic_baseoperator&=(const xexpression<E> &e)

Computes the bitwise and of *this and the xexpression e and assigns it to *this.

Return
a reference to *this.
Parameters
  • e: the xexpression involved in the operation.

template <class E>
auto xt::xsemantic_baseoperator|=(const xexpression<E> &e)

Computes the bitwise or of *this and the xexpression e and assigns it to *this.

Return
a reference to *this.
Parameters
  • e: the xexpression involved in the operation.

template <class E>
auto xt::xsemantic_baseoperator^=(const xexpression<E> &e)

Computes the bitwise xor of *this and the xexpression e and assigns it to *this.

Return
a reference to *this.
Parameters
  • e: the xexpression involved in the operation.

Assign functions

template <class E>
auto xt::xsemantic_baseassign(const xexpression<E> &e)

Assigns the xexpression e to *this.

Ensures no temporary will be used to perform the assignment.

Return
a reference to *this.
Parameters
  • e: the xexpression to assign.

template <class E>
auto xt::xsemantic_baseplus_assign(const xexpression<E> &e)

Adds the xexpression e to *this.

Ensures no temporary will be used to perform the assignment.

Return
a reference to *this.
Parameters
  • e: the xexpression to add.

template <class E>
auto xt::xsemantic_baseminus_assign(const xexpression<E> &e)

Subtracts the xexpression e to *this.

Ensures no temporary will be used to perform the assignment.

Return
a reference to *this.
Parameters
  • e: the xexpression to subtract.

template <class E>
auto xt::xsemantic_basemultiplies_assign(const xexpression<E> &e)

Multiplies *this with the xexpression e.

Ensures no temporary will be used to perform the assignment.

Return
a reference to *this.
Parameters
  • e: the xexpression involved in the operation.

template <class E>
auto xt::xsemantic_basedivides_assign(const xexpression<E> &e)

Divides *this by the xexpression e.

Ensures no temporary will be used to perform the assignment.

Return
a reference to *this.
Parameters
  • e: the xexpression involved in the operation.

template <class E>
auto xt::xsemantic_basemodulus_assign(const xexpression<E> &e)

Computes the remainder of *this after division by the xexpression e.

Ensures no temporary will be used to perform the assignment.

Return
a reference to *this.
Parameters
  • e: the xexpression involved in the operation.