# Operators and related functions

Defined in `xtensor/xmath.hpp` and `xtensor/xoperation.hpp`

Warning

doxygenfunction: Cannot find function “operator+” in doxygen xml output for project “xtensor” from directory: ../xml

Warning

doxygenfunction: Unable to resolve function “operator-” with arguments (E&&) in doxygen xml output for project “xtensor” from directory: ../xml. Potential matches:

    - difference_type operator-(const self_type &rhs) const
    - difference_type operator-(const self_type &rhs) const
    - difference_type operator-(const self_type &rhs) const
    - difference_type operator-(const self_type &rhs) const
    - difference_type operator-(const self_type &rhs) const noexcept
    - difference_type operator-(xfunctor_iterator rhs) const

Warning

doxygenfunction: Cannot find function “operator+” in doxygen xml output for project “xtensor” from directory: ../xml

Warning

doxygenfunction: Unable to resolve function “operator-” with arguments (E1&&, E2&&) in doxygen xml output for project “xtensor” from directory: ../xml. Potential matches:

    - difference_type operator-(const self_type &rhs) const
    - difference_type operator-(const self_type &rhs) const
    - difference_type operator-(const self_type &rhs) const
    - difference_type operator-(const self_type &rhs) const
    - difference_type operator-(const self_type &rhs) const noexcept
    - difference_type operator-(xfunctor_iterator rhs) const

Warning

doxygenfunction: Unable to resolve function “operator*” with arguments (E1&&, E2&&) in doxygen xml output for project “xtensor” from directory: ../xml. Potential matches:

    - const shape_type &operator*() const
    - decltype(auto) operator*() const
    - reference operator*() const
    - reference operator*() const
    - reference operator*() const
    - reference operator*() const
    - reference operator*() const
    - reference operator*() const
    - reference operator*() const
    - reference operator*() const
    - reference operator*() const
    - reference operator*() const
    - reference operator*() const
    - reference operator*() const
    - reference operator*() const
    - reference operator*() const
    - reference operator*() const
    - reference operator*() const noexcept
    - reference operator*() const noexcept
    - shape_type &operator*()
    - value_type operator*() const

Warning

doxygenfunction: Cannot find function “operator/” in doxygen xml output for project “xtensor” from directory: ../xml

Warning

doxygenfunction: Cannot find function “operator||” in doxygen xml output for project “xtensor” from directory: ../xml

Warning

doxygenfunction: Cannot find function “operator&&” in doxygen xml output for project “xtensor” from directory: ../xml

Warning

doxygenfunction: Cannot find function “operator!” in doxygen xml output for project “xtensor” from directory: ../xml

Warning

doxygenfunction: Cannot find function “where” in doxygen xml output for project “xtensor” from directory: ../xml

Warning

doxygenfunction: Cannot find function “any” in doxygen xml output for project “xtensor” from directory: ../xml

Warning

doxygenfunction: Unable to resolve function “all” with arguments (E&&) in doxygen xml output for project “xtensor” from directory: ../xml. Potential matches:

    - auto all() noexcept

Warning

doxygenfunction: Unable to resolve function “operator<” with arguments (E1&&, E2&&) in doxygen xml output for project “xtensor” from directory: ../xml. Potential matches:

    - bool operator<(const self_type &rhs) const
    - template<bool is_const, class CT> bool operator<(const xdummy_iterator<is_const, CT> &lhs, const xdummy_iterator<is_const, CT> &rhs) noexcept
    - template<class D> bool operator<(const xbuffer_adaptor_base<D> &lhs, const xbuffer_adaptor_base<D> &rhs)
    - template<class F, class ...CT> bool operator<(const xfunction_iterator<F, CT...> &it1, const xfunction_iterator<F, CT...> &it2)
    - template<class F, class IT> bool operator<(const xfunctor_iterator<F, IT> &lhs, const xfunctor_iterator<F, IT> &rhs)
    - template<class It, class BIt> bool operator<(const xbounded_iterator<It, BIt> &lhs, const xbounded_iterator<It, BIt> &rhs)
    - template<class St, class S, layout_type L> bool operator<(const xiterator<St, S, L> &lhs, const xiterator<St, S, L> &rhs)
    - template<class T, class A> bool operator<(const uvector<T, A> &lhs, const uvector<T, A> &rhs)
    - template<class T, std::size_t N, class A, bool Init> bool operator<(const svector<T, N, A, Init> &lhs, const svector<T, N, A, Init> &rhs)
    - template<class T, std::size_t N> bool operator<(const const_array<T, N> &lhs, const const_array<T, N> &rhs)
    - template<class VE, class FE> bool operator<(const xoptional_assembly_storage<VE, FE> &lhs, const xoptional_assembly_storage<VE, FE> &rhs)

Warning

doxygenfunction: Unable to resolve function “operator<=” with arguments (E1&&, E2&&) in doxygen xml output for project “xtensor” from directory: ../xml. Potential matches:

    - template<class D> bool operator<=(const xbuffer_adaptor_base<D> &lhs, const xbuffer_adaptor_base<D> &rhs)
    - template<class T, class A> bool operator<=(const uvector<T, A> &lhs, const uvector<T, A> &rhs)
    - template<class T, std::size_t N, class A, bool Init> bool operator<=(const svector<T, N, A, Init> &lhs, const svector<T, N, A, Init> &rhs)
    - template<class T, std::size_t N> bool operator<=(const const_array<T, N> &lhs, const const_array<T, N> &rhs)
    - template<class VE, class FE> bool operator<=(const xoptional_assembly_storage<VE, FE> &lhs, const xoptional_assembly_storage<VE, FE> &rhs)

Warning

doxygenfunction: Unable to resolve function “operator>” with arguments (E1&&, E2&&) in doxygen xml output for project “xtensor” from directory: ../xml. Potential matches:

    - template<class D> bool operator>(const xbuffer_adaptor_base<D> &lhs, const xbuffer_adaptor_base<D> &rhs)
    - template<class T, class A> bool operator>(const uvector<T, A> &lhs, const uvector<T, A> &rhs)
    - template<class T, std::size_t N, class A, bool Init> bool operator>(const svector<T, N, A, Init> &lhs, const svector<T, N, A, Init> &rhs)
    - template<class T, std::size_t N> bool operator>(const const_array<T, N> &lhs, const const_array<T, N> &rhs)
    - template<class VE, class FE> bool operator>(const xoptional_assembly_storage<VE, FE> &lhs, const xoptional_assembly_storage<VE, FE> &rhs)

Warning

doxygenfunction: Unable to resolve function “operator>=” with arguments (E1&&, E2&&) in doxygen xml output for project “xtensor” from directory: ../xml. Potential matches:

    - template<class D> bool operator>=(const xbuffer_adaptor_base<D> &lhs, const xbuffer_adaptor_base<D> &rhs)
    - template<class T, class A> bool operator>=(const uvector<T, A> &lhs, const uvector<T, A> &rhs)
    - template<class T, std::size_t N, class A, bool Init> bool operator>=(const svector<T, N, A, Init> &lhs, const svector<T, N, A, Init> &rhs)
    - template<class T, std::size_t N> bool operator>=(const const_array<T, N> &lhs, const const_array<T, N> &rhs)
    - template<class VE, class FE> bool operator>=(const xoptional_assembly_storage<VE, FE> &lhs, const xoptional_assembly_storage<VE, FE> &rhs)

Warning

doxygenfunction: Unable to resolve function “operator==” with arguments (const xexpression<E1>&, const xexpression<E2>&) in doxygen xml output for project “xtensor” from directory: ../xml. Potential matches:

    - bool operator==(const self_type &rhs) const
    - bool operator==(const self_type &rhs) const
    - bool operator==(const self_type &rhs) const
    - bool operator==(const self_type &rhs) const noexcept
    - bool operator==(const self_type &rhs) const noexcept
    - bool operator==(const self_type &rhs) const noexcept
    - bool operator==(const self_type &rhs) const noexcept
    - bool operator==(const self_type &rhs) const noexcept
    - bool operator==(const self_type &rhs) const noexcept
    - template<bool is_const, class CT> bool operator==(const xdummy_iterator<is_const, CT> &lhs, const xdummy_iterator<is_const, CT> &rhs) noexcept
    - template<class CT> bool operator==(const xaxis_iterator<CT> &lhs, const xaxis_iterator<CT> &rhs)
    - template<class CT> bool operator==(const xaxis_slice_iterator<CT> &lhs, const xaxis_slice_iterator<CT> &rhs)
    - template<class D> bool operator==(const xbuffer_adaptor_base<D> &lhs, const xbuffer_adaptor_base<D> &rhs)
    - template<class F, class ...CT> bool operator==(const xfunction_iterator<F, CT...> &it1, const xfunction_iterator<F, CT...> &it2)
    - template<class F, class IT> bool operator==(const xfunctor_iterator<F, IT> &lhs, const xfunctor_iterator<F, IT> &rhs)
    - template<class It, class BIt> bool operator==(const xbounded_iterator<It, BIt> &lhs, const xbounded_iterator<It, BIt> &rhs)
    - template<class St, class S, layout_type L> bool operator==(const xiterator<St, S, L> &lhs, const xiterator<St, S, L> &rhs)
    - template<class T, class A> bool operator==(const uvector<T, A> &lhs, const uvector<T, A> &rhs)
    - template<class T, class AT, alloc_tracking::policy PT, class U, class AU, alloc_tracking::policy PU> bool operator==(const tracking_allocator<T, AT, PT>&, const tracking_allocator<U, AU, PU>&)
    - template<class T, std::ptrdiff_t TB, std::ptrdiff_t TE> bool operator==(const sequence_view<T, TB, TE> &lhs, const sequence_view<T, TB, TE> &rhs)
    - template<class T, std::size_t N, class A, bool Init> bool operator==(const std::vector<T> &lhs, const svector<T, N, A, Init> &rhs)
    - template<class T, std::size_t N, class A, bool Init> bool operator==(const svector<T, N, A, Init> &lhs, const std::vector<T> &rhs)
    - template<class T, std::size_t N, class A, bool Init> bool operator==(const svector<T, N, A, Init> &lhs, const svector<T, N, A, Init> &rhs)
    - template<class T, std::size_t N> bool operator==(const const_array<T, N> &lhs, const const_array<T, N> &rhs)
    - template<class VE, class FE> bool operator==(const xoptional_assembly_storage<VE, FE> &lhs, const xoptional_assembly_storage<VE, FE> &rhs)

Warning

doxygenfunction: Unable to resolve function “operator!=” with arguments (const xexpression<E1>&, const xexpression<E2>&) in doxygen xml output for project “xtensor” from directory: ../xml. Potential matches:

    - bool operator!=(const self_type &rhs) const
    - bool operator!=(const self_type &rhs) const
    - bool operator!=(const self_type &rhs) const noexcept
    - bool operator!=(const self_type &rhs) const noexcept
    - bool operator!=(const self_type &rhs) const noexcept
    - bool operator!=(const self_type &rhs) const noexcept
    - bool operator!=(const self_type &rhs) const noexcept
    - bool operator!=(const self_type &rhs) const noexcept
    - template<class CT> bool operator!=(const xaxis_iterator<CT> &lhs, const xaxis_iterator<CT> &rhs)
    - template<class CT> bool operator!=(const xaxis_slice_iterator<CT> &lhs, const xaxis_slice_iterator<CT> &rhs)
    - template<class D> bool operator!=(const xbuffer_adaptor_base<D> &lhs, const xbuffer_adaptor_base<D> &rhs)
    - template<class T, class A> bool operator!=(const uvector<T, A> &lhs, const uvector<T, A> &rhs)
    - template<class T, class AT, alloc_tracking::policy PT, class U, class AU, alloc_tracking::policy PU> bool operator!=(const tracking_allocator<T, AT, PT> &a, const tracking_allocator<U, AU, PU> &b)
    - template<class T, std::ptrdiff_t TB, std::ptrdiff_t TE> bool operator!=(const sequence_view<T, TB, TE> &lhs, const sequence_view<T, TB, TE> &rhs)
    - template<class T, std::size_t N, class A, bool Init> bool operator!=(const svector<T, N, A, Init> &lhs, const svector<T, N, A, Init> &rhs)
    - template<class T, std::size_t N> bool operator!=(const const_array<T, N> &lhs, const const_array<T, N> &rhs)
    - template<class VE, class FE> bool operator!=(const xoptional_assembly_storage<VE, FE> &lhs, const xoptional_assembly_storage<VE, FE> &rhs)

Warning

doxygenfunction: Unable to resolve function “equal” with arguments (E1&&, E2&&) in doxygen xml output for project “xtensor” from directory: ../xml. Potential matches:

    - bool equal(const self_type &rhs) const
    - bool equal(const self_type &rhs) const
    - bool equal(const self_type &rhs) const
    - bool equal(const self_type &rhs) const
    - bool equal(const self_type &rhs) const noexcept
    - bool equal(const xfunctor_iterator &rhs) const
    - bool equal(const xiterator &rhs) const

Warning

doxygenfunction: Cannot find function “not_equal” in doxygen xml output for project “xtensor” from directory: ../xml

Warning

doxygenfunction: Cannot find function “less” in doxygen xml output for project “xtensor” from directory: ../xml

Warning

doxygenfunction: Cannot find function “less_equal” in doxygen xml output for project “xtensor” from directory: ../xml

Warning

doxygenfunction: Cannot find function “greater” in doxygen xml output for project “xtensor” from directory: ../xml

Warning

doxygenfunction: Cannot find function “greater_equal” in doxygen xml output for project “xtensor” from directory: ../xml

Warning

doxygenfunction: Unable to resolve function “operator&” with arguments (E1&&, E2&&) in doxygen xml output for project “xtensor” from directory: ../xml. Potential matches:

    - xtl::xclosure_pointer<const self_type&> operator&() const &
    - xtl::xclosure_pointer<self_type&> operator&() &
    - xtl::xclosure_pointer<self_type> operator&() &&

Warning

doxygenfunction: Unable to resolve function “operator|” with arguments (E1&&, E2&&) in doxygen xml output for project “xtensor” from directory: ../xml. Potential matches:

    - template<class ...OA> auto operator|(const rangemaker<OA...> &rng, const std::ptrdiff_t &t)
    - template<class ...OA> auto operator|(const rangemaker<OA...> &rng, const xt::placeholders::xtuph&)
    - template<template<class...> class A, class ...AX, class X, xtl::check_concept<is_evaluation_strategy<AX>..., is_evaluation_strategy<X>> = 0> auto operator|(const A<AX...> &args, const A<X> &rhs)

Warning

doxygenfunction: Cannot find function “operator^” in doxygen xml output for project “xtensor” from directory: ../xml

Warning

doxygenfunction: Cannot find function “operator~” in doxygen xml output for project “xtensor” from directory: ../xml

Warning

doxygenfunction: Cannot find function “left_shift” in doxygen xml output for project “xtensor” from directory: ../xml

Warning

doxygenfunction: Cannot find function “right_shift” in doxygen xml output for project “xtensor” from directory: ../xml

Warning

doxygenfunction: Unable to resolve function “operator<<” with arguments (E1&&, E2&&) in doxygen xml output for project “xtensor” from directory: ../xml. Potential matches:

    - std::ostream &operator<<(std::ostream &out, const edge_items &n)
    - std::ostream &operator<<(std::ostream &out, const line_width &n)
    - std::ostream &operator<<(std::ostream &out, const precision &n)
    - std::ostream &operator<<(std::ostream &out, const threshold &n)
    - template<class E> std::ostream &operator<<(std::ostream &out, const xexpression<E> &e)

Warning

doxygenfunction: Cannot find function “operator>>” in doxygen xml output for project “xtensor” from directory: ../xml

Warning

doxygenfunction: Cannot find function “cast” in doxygen xml output for project “xtensor” from directory: ../xml