xiterable

Defined in xtensor/xiterable.hpp

template <class D>
class xt::xconst_iterable

Base class for multidimensional iterable constant expressions.

The xconst_iterable class defines the interface for multidimensional constant expressions that can be iterated.

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

Subclassed by xt::xexpression_const_iterable< D >, xt::xiterable< D >

Constant broadcast iterators

template <layout_type L>
auto xbegin() const

Returns a constant iterator to the first element of the expression.

Template Parameters
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <layout_type L>
auto xend() const

Returns a constant iterator to the element following the last element of the expression.

Template Parameters
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <layout_type L>
auto cxbegin() const

Returns a constant iterator to the first element of the expression.

Template Parameters
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <layout_type L>
auto cxend() const

Returns a constant iterator to the element following the last element of the expression.

Template Parameters
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <class S, layout_type L>
auto xbegin(const S &shape) const

Returns a constant iterator to the first element of the expression.

The iteration is broadcasted to the specified shape.

Parameters
  • shape: the shape used for broadcasting
Template Parameters
  • S: type of the shape parameter.
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <class S, layout_type L>
auto xend(const S &shape) const

Returns a constant iterator to the element following the last element of the expression.

The iteration is broadcasted to the specified shape.

Parameters
  • shape: the shape used for broadcasting
Template Parameters
  • S: type of the shape parameter.
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <class S, layout_type L>
auto cxbegin(const S &shape) const

Returns a constant iterator to the first element of the expression.

The iteration is broadcasted to the specified shape.

Parameters
  • shape: the shape used for broadcasting
Template Parameters
  • S: type of the shape parameter.
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <class S, layout_type L>
auto cxend(const S &shape) const

Returns a constant iterator to the element following the last element of the expression.

The iteration is broadcasted to the specified shape.

Parameters
  • shape: the shape used for broadcasting
Template Parameters
  • S: type of the shape parameter.
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

Constant reverse broadcast iterators

template <layout_type L>
auto xrbegin() const

Returns a constant iterator to the first element of the reversed expression.

Template Parameters
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <layout_type L>
auto xrend() const

Returns a constant iterator to the element following the last element of the reversed expression.

Template Parameters
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <layout_type L>
auto cxrbegin() const

Returns a constant iterator to the first element of the reversed expression.

Template Parameters
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <layout_type L>
auto cxrend() const

Returns a constant iterator to the element following the last element of the reversed expression.

Template Parameters
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <class S, layout_type L>
auto xrbegin(const S &shape) const

Returns a constant iterator to the first element of the reversed expression.

The iteration is broadcasted to the specified shape.

Parameters
  • shape: the shape used for broadcasting
Template Parameters
  • S: type of the shape parameter.
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <class S, layout_type L>
auto xrend(const S &shape) const

Returns a constant iterator to the element following the last element of the reversed expression.

The iteration is broadcasted to the specified shape.

Parameters
  • shape: the shape used for broadcasting
Template Parameters
  • S: type of the shape parameter.
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <class S, layout_type L>
auto cxrbegin(const S &shape) const

Returns a constant iterator to the first element of the reversed expression.

The iteration is broadcasted to the specified shape.

Parameters
  • shape: the shape used for broadcasting
Template Parameters
  • S: type of the shape parameter.
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <class S, layout_type L>
auto cxrend(const S &shape) const

Returns a constant iterator to the element following the last element of the reversed expression.

The iteration is broadcasted to the specified shape.

Parameters
  • shape: the shape used for broadcasting
Template Parameters
  • S: type of the shape parameter.
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <class D>
class xt::xiterable

Base class for multidimensional iterable expressions.

The xiterable class defines the interface for multidimensional expressions that can be iterated.

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

Inherits from xt::xconst_iterable< D >

Subclassed by xt::xcontainer< D >, xt::xexpression_iterable< D >

Broadcast iterators

template <layout_type L>
auto xbegin()

Returns an iterator to the first element of the expression.

Template Parameters
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <layout_type L>
auto xend()

Returns an iterator to the element following the last element of the expression.

Template Parameters
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <class S, layout_type L>
auto xbegin(const S &shape)

Returns an iterator to the first element of the expression.

The iteration is broadcasted to the specified shape.

Parameters
  • shape: the shape used for broadcasting
Template Parameters
  • S: type of the shape parameter.
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <class S, layout_type L>
auto xend(const S &shape)

Returns an iterator to the element following the last element of the expression.

The iteration is broadcasted to the specified shape.

Parameters
  • shape: the shape used for broadcasting
Template Parameters
  • S: type of the shape parameter.
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

Reverse broadcast iterators

template <layout_type L>
auto xrbegin()

Returns an iterator to the first element of the reversed expression.

Template Parameters
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <layout_type L>
auto xrend()

Returns an iterator to the element following the last element of the reversed expression.

Template Parameters
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <class S, layout_type L>
auto xrbegin(const S &shape)

Returns an iterator to the first element of the reversed expression.

The iteration is broadcasted to the specified shape.

Parameters
  • shape: the shape used for broadcasting
Template Parameters
  • S: type of the shape parameter.
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <class S, layout_type L>
auto xrend(const S &shape)

Returns an iterator to the element following the last element of the reversed expression.

The iteration is broadcasted to the specified shape.

Parameters
  • shape: the shape used for broadcasting
Template Parameters
  • S: type of the shape parameter.
  • L: layout used for the traversal. Default value is DEFAULT_LAYOUT.

template <class D>
class xt::xexpression_const_iterable

Base class for multidimensional iterable constant expressions that don’t store any data.

The xexpression_const_iterable class defines the interface for multidimensional constant expressions that don’t store any data and that can be iterated.

Template Parameters

Inherits from xt::xconst_iterable< D >

Constant Iterators

auto begin() const

Returns a constant iterator to the first element of the expression.

auto end() const

Returns a constant iterator to the element following the last element of the expression.

auto cbegin() const

Returns a constant iterator to the first element of the expression.

auto cend() const

Returns a constant iterator to the element following the last element of the expression.

Constant Reverse Iterators

auto rbegin() const

Returns a constant iterator to the first element of the reversed expression.

auto rend() const

Returns a constant iterator to the element following the last element of the reversed expression.

auto crbegin() const

Returns a constant iterator to the first element of the reversed expression.

auto crend() const

Returns a constant iterator to the element following the last element of the reversed expression.

template <class D>
class xt::xexpression_iterable

Base class for multidimensional iterable expressions that don’t store any data.

The xexpression_iterable class defines the interface for multidimensional expressions that don’t store any data and that can be iterated.

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

Inherits from xt::xiterable< D >

Iterators

auto begin()

Returns an iterator to the first element of the expression.

auto end()

Returns an iterator to the element following the last element of the expression.

Reverse Iterators

auto rbegin()

Returns an iterator to the first element of the reversed expression.

auto rend()

Returns an iterator to the element following the last element of the reversed expression.

Constant Iterators

auto begin() const

Returns a constant iterator to the first element of the expression.

auto end() const

Returns a constant iterator to the element following the last element of the expression.

auto cbegin() const

Returns a constant iterator to the first element of the expression.

auto cend() const

Returns a constant iterator to the element following the last element of the expression.

Constant Reverse Iterators

auto rbegin() const

Returns a constant iterator to the first element of the reversed expression.

auto rend() const

Returns a constant iterator to the element following the last element of the reversed expression.

auto crbegin() const

Returns a constant iterator to the first element of the reversed expression.

auto crend() const

Returns a constant iterator to the element following the last element of the reversed expression.