xtensor
Loading...
Searching...
No Matches
xt::xscalar< CT > Class Template Reference
Inheritance diagram for xt::xscalar< CT >:
xt::xsharable_expression< xscalar< CT > > xt::xiterable< xscalar< CT > > xt::xaccessible< xscalar< CT > > xt::xexpression< D >

Public Types

using self_type = xscalar<CT>
 
using xexpression_type = std::decay_t<CT>
 
using extension_base = extension::xscalar_base_t<CT>
 
using accessible_base = xaccessible<self_type>
 
using expression_tag = typename extension_base::expression_tag
 
using inner_types = xcontainer_inner_types<self_type>
 
using value_type = typename inner_types::value_type
 
using reference = typename inner_types::reference
 
using const_reference = typename inner_types::const_reference
 
using pointer = value_type*
 
using const_pointer = const value_type*
 
using size_type = typename inner_types::size_type
 
using difference_type = std::ptrdiff_t
 
using simd_value_type = xt_simd::simd_type<value_type>
 
using bool_load_type = xt::bool_load_type<value_type>
 
using iterable_base = xiterable<self_type>
 
using inner_shape_type = typename iterable_base::inner_shape_type
 
using shape_type = inner_shape_type
 
using stepper = typename iterable_base::stepper
 
using const_stepper = typename iterable_base::const_stepper
 
template<layout_type L>
using layout_iterator = typename iterable_base::template layout_iterator<L>
 
template<layout_type L>
using const_layout_iterator = typename iterable_base::template const_layout_iterator<L>
 
template<layout_type L>
using reverse_layout_iterator = typename iterable_base::template reverse_layout_iterator<L>
 
template<layout_type L>
using const_reverse_layout_iterator = typename iterable_base::template const_reverse_layout_iterator<L>
 
template<class S , layout_type L>
using broadcast_iterator = typename iterable_base::template broadcast_iterator<S, L>
 
template<class S , layout_type L>
using const_broadcast_iterator = typename iterable_base::template const_broadcast_iterator<S, L>
 
template<class S , layout_type L>
using reverse_broadcast_iterator = typename iterable_base::template reverse_broadcast_iterator<S, L>
 
template<class S , layout_type L>
using const_reverse_broadcast_iterator = typename iterable_base::template const_reverse_broadcast_iterator<S, L>
 
using iterator = value_type*
 
using const_iterator = const value_type*
 
using reverse_iterator = std::reverse_iterator<iterator>
 
using const_reverse_iterator = std::reverse_iterator<const_iterator>
 
using dummy_iterator = xdummy_iterator<false, CT>
 
using const_dummy_iterator = xdummy_iterator<true, CT>
 
- Public Types inherited from xt::xexpression< D >
using derived_type = D
 

Public Member Functions

 xscalar (CT value) noexcept
 
 operator value_type & () noexcept
 
 operator const value_type & () const noexcept
 
size_type size () const noexcept
 
const shape_type & shape () const noexcept
 
size_type shape (size_type i) const noexcept
 
layout_type layout () const noexcept
 
bool is_contiguous () const noexcept
 
template<class... Args>
reference operator() (Args...) noexcept
 
template<class... Args>
reference unchecked (Args...) noexcept
 
template<class... Args>
const_reference operator() (Args...) const noexcept
 
template<class... Args>
const_reference unchecked (Args...) const noexcept
 
template<class It >
reference element (It, It) noexcept
 
template<class It >
const_reference element (It, It) const noexcept
 
xexpression_type & expression () noexcept
 
const xexpression_type & expression () const noexcept
 
template<class S >
bool broadcast_shape (S &shape, bool reuse_cache=false) const noexcept
 
template<class S >
bool has_linear_assign (const S &strides) const noexcept
 
template<layout_type L = ::xt::layout_type::row_major>
iterator begin () noexcept
 
template<layout_type L = ::xt::layout_type::row_major>
iterator end () noexcept
 
template<layout_type L = ::xt::layout_type::row_major>
const_iterator begin () const noexcept
 
template<layout_type L = ::xt::layout_type::row_major>
const_iterator end () const noexcept
 
template<layout_type L = ::xt::layout_type::row_major>
const_iterator cbegin () const noexcept
 
template<layout_type L = ::xt::layout_type::row_major>
const_iterator cend () const noexcept
 
template<layout_type L = ::xt::layout_type::row_major>
reverse_iterator rbegin () noexcept
 
template<layout_type L = ::xt::layout_type::row_major>
reverse_iterator rend () noexcept
 
template<layout_type L = ::xt::layout_type::row_major>
const_reverse_iterator rbegin () const noexcept
 
template<layout_type L = ::xt::layout_type::row_major>
const_reverse_iterator rend () const noexcept
 
template<layout_type L = ::xt::layout_type::row_major>
const_reverse_iterator crbegin () const noexcept
 
template<layout_type L = ::xt::layout_type::row_major>
const_reverse_iterator crend () const noexcept
 
template<class S , layout_type L = ::xt::layout_type::row_major>
broadcast_iterator< S, Lbegin (const S &shape) noexcept
 
template<class S , layout_type L = ::xt::layout_type::row_major>
broadcast_iterator< S, Lend (const S &shape) noexcept
 
template<class S , layout_type L = ::xt::layout_type::row_major>
const_broadcast_iterator< S, Lbegin (const S &shape) const noexcept
 
template<class S , layout_type L = ::xt::layout_type::row_major>
const_broadcast_iterator< S, Lend (const S &shape) const noexcept
 
template<class S , layout_type L = ::xt::layout_type::row_major>
const_broadcast_iterator< S, Lcbegin (const S &shape) const noexcept
 
template<class S , layout_type L = ::xt::layout_type::row_major>
const_broadcast_iterator< S, Lcend (const S &shape) const noexcept
 
template<class S , layout_type L = ::xt::layout_type::row_major>
reverse_broadcast_iterator< S, Lrbegin (const S &shape) noexcept
 
template<class S , layout_type L = ::xt::layout_type::row_major>
reverse_broadcast_iterator< S, Lrend (const S &shape) noexcept
 
template<class S , layout_type L = ::xt::layout_type::row_major>
const_reverse_broadcast_iterator< S, Lrbegin (const S &shape) const noexcept
 
template<class S , layout_type L = ::xt::layout_type::row_major>
const_reverse_broadcast_iterator< S, Lrend (const S &shape) const noexcept
 
template<class S , layout_type L = ::xt::layout_type::row_major>
const_reverse_broadcast_iterator< S, Lcrbegin (const S &shape) const noexcept
 
template<class S , layout_type L = ::xt::layout_type::row_major>
const_reverse_broadcast_iterator< S, Lcrend (const S &shape) const noexcept
 
iterator linear_begin () noexcept
 
iterator linear_end () noexcept
 
const_iterator linear_begin () const noexcept
 
const_iterator linear_end () const noexcept
 
const_iterator linear_cbegin () const noexcept
 
const_iterator linear_cend () const noexcept
 
reverse_iterator linear_rbegin () noexcept
 
reverse_iterator linear_rend () noexcept
 
const_reverse_iterator linear_rbegin () const noexcept
 
const_reverse_iterator linear_rend () const noexcept
 
const_reverse_iterator linear_crbegin () const noexcept
 
const_reverse_iterator linear_crend () const noexcept
 
template<class S >
stepper stepper_begin (const S &shape) noexcept
 
template<class S >
stepper stepper_end (const S &shape, layout_type l) 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 l) const noexcept
 
dummy_iterator dummy_begin () noexcept
 
dummy_iterator dummy_end () noexcept
 
const_dummy_iterator dummy_begin () const noexcept
 
const_dummy_iterator dummy_end () const noexcept
 
reference data_element (size_type i) noexcept
 
const_reference data_element (size_type i) const noexcept
 
reference flat (size_type i) noexcept
 
const_reference flat (size_type i) const noexcept
 
template<class align , class simd = simd_value_type>
void store_simd (size_type i, const simd &e)
 
template<class align , class requested_type = value_type, std::size_t N = xt_simd::simd_traits<requested_type>::size>
xt_simd::simd_return_type< value_type, requested_typeload_simd (size_type i) const
 
template<class... Args>
auto operator() (Args...) noexcept -> reference
 
template<class... Args>
auto unchecked (Args...) noexcept -> reference
 
template<class... Args>
auto operator() (Args...) const noexcept -> const_reference
 
template<class... Args>
auto unchecked (Args...) const noexcept -> const_reference
 
template<class It >
auto element (It, It) noexcept -> reference
 
template<class It >
auto element (It, It) const noexcept -> const_reference
 
template<layout_type L>
auto begin () noexcept -> iterator
 
template<layout_type L>
auto end () noexcept -> iterator
 
template<layout_type L>
auto begin () const noexcept -> const_iterator
 
template<layout_type L>
auto end () const noexcept -> const_iterator
 
template<layout_type L>
auto cbegin () const noexcept -> const_iterator
 
template<layout_type L>
auto cend () const noexcept -> const_iterator
 
template<layout_type L>
auto rbegin () noexcept -> reverse_iterator
 
template<layout_type L>
auto rend () noexcept -> reverse_iterator
 
template<layout_type L>
auto rbegin () const noexcept -> const_reverse_iterator
 
template<layout_type L>
auto rend () const noexcept -> const_reverse_iterator
 
template<layout_type L>
auto crbegin () const noexcept -> const_reverse_iterator
 
template<layout_type L>
auto crend () const noexcept -> const_reverse_iterator
 
template<class S , layout_type L>
auto begin (const S &shape) noexcept -> broadcast_iterator< S, L >
 
template<class S , layout_type L>
auto end (const S &shape) noexcept -> broadcast_iterator< S, L >
 
template<class S , layout_type L>
auto begin (const S &shape) const noexcept -> const_broadcast_iterator< S, L >
 
template<class S , layout_type L>
auto end (const S &shape) const noexcept -> const_broadcast_iterator< S, L >
 
template<class S , layout_type L>
auto cbegin (const S &shape) const noexcept -> const_broadcast_iterator< S, L >
 
template<class S , layout_type L>
auto cend (const S &shape) const noexcept -> const_broadcast_iterator< S, L >
 
template<class S , layout_type L>
auto rbegin (const S &shape) noexcept -> reverse_broadcast_iterator< S, L >
 
template<class S , layout_type L>
auto rend (const S &shape) noexcept -> reverse_broadcast_iterator< S, L >
 
template<class S , layout_type L>
auto rbegin (const S &shape) const noexcept -> const_reverse_broadcast_iterator< S, L >
 
template<class S , layout_type L>
auto rend (const S &shape) const noexcept -> const_reverse_broadcast_iterator< S, L >
 
template<class S , layout_type L>
auto crbegin (const S &shape) const noexcept -> const_reverse_broadcast_iterator< S, L >
 
template<class S , layout_type L>
auto crend (const S &shape) const noexcept -> const_reverse_broadcast_iterator< S, L >
 
template<class S >
auto stepper_begin (const S &) noexcept -> stepper
 
template<class S >
auto stepper_end (const S &, layout_type) noexcept -> stepper
 
template<class S >
auto stepper_begin (const S &) const noexcept -> const_stepper
 
template<class S >
auto stepper_end (const S &, layout_type) const noexcept -> const_stepper
 
template<class align , class requested_type , std::size_t N>
auto load_simd (size_type) const -> xt_simd::simd_return_type< value_type, requested_type >
 
template<class... Args>
reference at (Args... args)
 
template<class... Args>
auto at (Args... args) -> reference
 Returns a reference to the element at the specified position in the expression, after dimension and bounds checking.
 
template<class... Args>
const_reference at (Args... args) const
 
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.
 
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.
 
template<class... Args>
reference periodic (Args... args)
 
template<class... 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).
 
template<class... Args>
const_reference periodic (Args... args) const
 
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).
 
- Public Member Functions inherited from xt::xexpression< D >
derived_typederived_cast () &noexcept
 Returns a reference to the actual derived type of the xexpression.
 
const derived_typederived_cast () const &noexcept
 Returns a constant reference to the actual derived type of the xexpression.
 
derived_type derived_cast () &&noexcept
 Returns a constant reference to the actual derived type of the xexpression.
 

Static Public Attributes

static constexpr layout_type static_layout = layout_type::any
 
static constexpr bool contiguous_layout = true
 

Friends

class xconst_iterable< self_type >
 
class xiterable< self_type >
 
class xaccessible< self_type >
 
class xconst_accessible< self_type >
 

Additional Inherited Members

- Protected Member Functions inherited from xt::xsharable_expression< xscalar< CT > >
 xsharable_expression (const xsharable_expression &)=default
 
 xsharable_expression (xsharable_expression &&)=default
 
xsharable_expressionoperator= (const xsharable_expression &)=default
 
xsharable_expressionoperator= (xsharable_expression &&)=default
 
- Protected Member Functions inherited from xt::xexpression< D >
 xexpression (const xexpression &)=default
 
xexpressionoperator= (const xexpression &)=default
 
 xexpression (xexpression &&)=default
 
xexpressionoperator= (xexpression &&)=default
 

Detailed Description

template<class CT>
class xt::xscalar< CT >

Definition at line 86 of file xscalar.hpp.

Member Typedef Documentation

◆ accessible_base

template<class CT >
using xt::xscalar< CT >::accessible_base = xaccessible<self_type>

Definition at line 96 of file xscalar.hpp.

◆ bool_load_type

template<class CT >
using xt::xscalar< CT >::bool_load_type = xt::bool_load_type<value_type>

Definition at line 108 of file xscalar.hpp.

◆ broadcast_iterator

template<class CT >
template<class S , layout_type L>
using xt::xscalar< CT >::broadcast_iterator = typename iterable_base::template broadcast_iterator<S, L>

Definition at line 128 of file xscalar.hpp.

◆ const_broadcast_iterator

template<class CT >
template<class S , layout_type L>
using xt::xscalar< CT >::const_broadcast_iterator = typename iterable_base::template const_broadcast_iterator<S, L>

Definition at line 130 of file xscalar.hpp.

◆ const_dummy_iterator

template<class CT >
using xt::xscalar< CT >::const_dummy_iterator = xdummy_iterator<true, CT>

Definition at line 143 of file xscalar.hpp.

◆ const_iterator

template<class CT >
using xt::xscalar< CT >::const_iterator = const value_type*

Definition at line 138 of file xscalar.hpp.

◆ const_layout_iterator

template<class CT >
template<layout_type L>
using xt::xscalar< CT >::const_layout_iterator = typename iterable_base::template const_layout_iterator<L>

Definition at line 120 of file xscalar.hpp.

◆ const_pointer

template<class CT >
using xt::xscalar< CT >::const_pointer = const value_type*

Definition at line 104 of file xscalar.hpp.

◆ const_reference

template<class CT >
using xt::xscalar< CT >::const_reference = typename inner_types::const_reference

Definition at line 102 of file xscalar.hpp.

◆ const_reverse_broadcast_iterator

template<class CT >
template<class S , layout_type L>
using xt::xscalar< CT >::const_reverse_broadcast_iterator = typename iterable_base::template const_reverse_broadcast_iterator<S, L>

Definition at line 135 of file xscalar.hpp.

◆ const_reverse_iterator

template<class CT >
using xt::xscalar< CT >::const_reverse_iterator = std::reverse_iterator<const_iterator>

Definition at line 140 of file xscalar.hpp.

◆ const_reverse_layout_iterator

template<class CT >
template<layout_type L>
using xt::xscalar< CT >::const_reverse_layout_iterator = typename iterable_base::template const_reverse_layout_iterator<L>

Definition at line 125 of file xscalar.hpp.

◆ const_stepper

template<class CT >
using xt::xscalar< CT >::const_stepper = typename iterable_base::const_stepper

Definition at line 115 of file xscalar.hpp.

◆ difference_type

template<class CT >
using xt::xscalar< CT >::difference_type = std::ptrdiff_t

Definition at line 106 of file xscalar.hpp.

◆ dummy_iterator

template<class CT >
using xt::xscalar< CT >::dummy_iterator = xdummy_iterator<false, CT>

Definition at line 142 of file xscalar.hpp.

◆ expression_tag

template<class CT >
using xt::xscalar< CT >::expression_tag = typename extension_base::expression_tag

Definition at line 97 of file xscalar.hpp.

◆ extension_base

template<class CT >
using xt::xscalar< CT >::extension_base = extension::xscalar_base_t<CT>

Definition at line 95 of file xscalar.hpp.

◆ inner_shape_type

template<class CT >
using xt::xscalar< CT >::inner_shape_type = typename iterable_base::inner_shape_type

Definition at line 111 of file xscalar.hpp.

◆ inner_types

template<class CT >
using xt::xscalar< CT >::inner_types = xcontainer_inner_types<self_type>

Definition at line 98 of file xscalar.hpp.

◆ iterable_base

template<class CT >
using xt::xscalar< CT >::iterable_base = xiterable<self_type>

Definition at line 110 of file xscalar.hpp.

◆ iterator

template<class CT >
using xt::xscalar< CT >::iterator = value_type*

Definition at line 137 of file xscalar.hpp.

◆ layout_iterator

template<class CT >
template<layout_type L>
using xt::xscalar< CT >::layout_iterator = typename iterable_base::template layout_iterator<L>

Definition at line 118 of file xscalar.hpp.

◆ pointer

template<class CT >
using xt::xscalar< CT >::pointer = value_type*

Definition at line 103 of file xscalar.hpp.

◆ reference

template<class CT >
using xt::xscalar< CT >::reference = typename inner_types::reference

Definition at line 101 of file xscalar.hpp.

◆ reverse_broadcast_iterator

template<class CT >
template<class S , layout_type L>
using xt::xscalar< CT >::reverse_broadcast_iterator = typename iterable_base::template reverse_broadcast_iterator<S, L>

Definition at line 133 of file xscalar.hpp.

◆ reverse_iterator

template<class CT >
using xt::xscalar< CT >::reverse_iterator = std::reverse_iterator<iterator>

Definition at line 139 of file xscalar.hpp.

◆ reverse_layout_iterator

template<class CT >
template<layout_type L>
using xt::xscalar< CT >::reverse_layout_iterator = typename iterable_base::template reverse_layout_iterator<L>

Definition at line 123 of file xscalar.hpp.

◆ self_type

template<class CT >
using xt::xscalar< CT >::self_type = xscalar<CT>

Definition at line 93 of file xscalar.hpp.

◆ shape_type

template<class CT >
using xt::xscalar< CT >::shape_type = inner_shape_type

Definition at line 112 of file xscalar.hpp.

◆ simd_value_type

template<class CT >
using xt::xscalar< CT >::simd_value_type = xt_simd::simd_type<value_type>

Definition at line 107 of file xscalar.hpp.

◆ size_type

template<class CT >
using xt::xscalar< CT >::size_type = typename inner_types::size_type

Definition at line 105 of file xscalar.hpp.

◆ stepper

template<class CT >
using xt::xscalar< CT >::stepper = typename iterable_base::stepper

Definition at line 114 of file xscalar.hpp.

◆ value_type

template<class CT >
using xt::xscalar< CT >::value_type = typename inner_types::value_type

Definition at line 100 of file xscalar.hpp.

◆ xexpression_type

template<class CT >
using xt::xscalar< CT >::xexpression_type = std::decay_t<CT>

Definition at line 94 of file xscalar.hpp.

Constructor & Destructor Documentation

◆ xscalar() [1/2]

template<class CT >
xt::xscalar< CT >::xscalar ( )
inlinenoexcept

Definition at line 496 of file xscalar.hpp.

◆ xscalar() [2/2]

template<class CT >
xt::xscalar< CT >::xscalar ( CT value)
inlinenoexcept

Definition at line 502 of file xscalar.hpp.

Member Function Documentation

◆ at() [1/2]

template<class CT >
template<class... Args>
auto xt::xaccessible< D >::at ( Args... args) -> reference
inline

Returns a reference to the element at the specified position in the expression, after dimension and bounds checking.

Parameters
argsa list of indices specifying the position in the expression. Indices must be unsigned integers, the number of indices should be equal to the number of dimensions of the expression.
Exceptions
std::out_of_rangeif the number of argument is greater than the number of dimensions or if indices are out of bounds.

Definition at line 274 of file xaccessible.hpp.

◆ at() [2/2]

template<class CT >
template<class... Args>
auto xt::xconst_accessible< D >::at ( Args... args) const -> const_reference
inline

Returns a constant reference to the element at the specified position in the expression, after dimension and bounds checking.

Parameters
argsa list of indices specifying the position in the expression. Indices must be unsigned integers, the number of indices should be equal to the number of dimensions of the expression.
Exceptions
std::out_of_rangeif the number of argument is greater than the number of dimensions or if indices are out of bounds.

Definition at line 111 of file xaccessible.hpp.

◆ back() [1/2]

template<class CT >
auto xt::xaccessible< D >::back ( )
inline

Returns a reference to the last element of the expression.

Definition at line 109 of file xaccessible.hpp.

◆ back() [2/2]

template<class CT >
auto xt::xconst_accessible< D >::back ( ) const
inline

Returns a constant reference to last the element of the expression.

Definition at line 113 of file xaccessible.hpp.

◆ begin() [1/4]

template<class CT >
template<layout_type L>
auto xt::xscalar< CT >::begin ( ) const -> const_iterator
inlinenoexcept

Definition at line 636 of file xscalar.hpp.

◆ begin() [2/4]

template<class CT >
template<layout_type L>
auto xt::xscalar< CT >::begin ( ) -> iterator
inlinenoexcept

Definition at line 622 of file xscalar.hpp.

◆ begin() [3/4]

template<class CT >
template<class S , layout_type L>
auto xt::xscalar< CT >::begin ( const S & shape) const -> const_broadcast_iterator<S, L>
inlinenoexcept

Definition at line 724 of file xscalar.hpp.

◆ begin() [4/4]

template<class CT >
template<class S , layout_type L>
auto xt::xscalar< CT >::begin ( const S & shape) -> broadcast_iterator<S, L>
inlinenoexcept

Definition at line 710 of file xscalar.hpp.

◆ broadcast_shape()

template<class CT >
template<class S >
bool xt::xscalar< CT >::broadcast_shape ( S & shape,
bool reuse_cache = false ) const
inlinenoexcept

Definition at line 608 of file xscalar.hpp.

◆ cbegin() [1/2]

template<class CT >
template<layout_type L>
auto xt::xscalar< CT >::cbegin ( ) const -> const_iterator
inlinenoexcept

Definition at line 650 of file xscalar.hpp.

◆ cbegin() [2/2]

template<class CT >
template<class S , layout_type L>
auto xt::xscalar< CT >::cbegin ( const S & shape) const -> const_broadcast_iterator<S, L>
inlinenoexcept

Definition at line 738 of file xscalar.hpp.

◆ cend() [1/2]

template<class CT >
template<layout_type L>
auto xt::xscalar< CT >::cend ( ) const -> const_iterator
inlinenoexcept

Definition at line 657 of file xscalar.hpp.

◆ cend() [2/2]

template<class CT >
template<class S , layout_type L>
auto xt::xscalar< CT >::cend ( const S & shape) const -> const_broadcast_iterator<S, L>
inlinenoexcept

Definition at line 745 of file xscalar.hpp.

◆ crbegin() [1/2]

template<class CT >
template<layout_type L>
auto xt::xscalar< CT >::crbegin ( ) const -> const_reverse_iterator
inlinenoexcept

Definition at line 692 of file xscalar.hpp.

◆ crbegin() [2/2]

template<class CT >
template<class S , layout_type L>
auto xt::xscalar< CT >::crbegin ( const S & shape) const -> const_reverse_broadcast_iterator<S, L>
inlinenoexcept

Definition at line 780 of file xscalar.hpp.

◆ crend() [1/2]

template<class CT >
template<layout_type L>
auto xt::xscalar< CT >::crend ( ) const -> const_reverse_iterator
inlinenoexcept

Definition at line 699 of file xscalar.hpp.

◆ crend() [2/2]

template<class CT >
template<class S , layout_type L>
auto xt::xscalar< CT >::crend ( const S & shape) const -> const_reverse_broadcast_iterator<S, L>
inlinenoexcept

Definition at line 787 of file xscalar.hpp.

◆ data_element() [1/2]

template<class CT >
auto xt::xscalar< CT >::data_element ( size_type i) const
inlinenoexcept

Definition at line 923 of file xscalar.hpp.

◆ data_element() [2/2]

template<class CT >
auto xt::xscalar< CT >::data_element ( size_type i)
inlinenoexcept

Definition at line 917 of file xscalar.hpp.

◆ dummy_begin() [1/2]

template<class CT >
auto xt::xscalar< CT >::dummy_begin ( ) const
inlinenoexcept

Definition at line 905 of file xscalar.hpp.

◆ dummy_begin() [2/2]

template<class CT >
auto xt::xscalar< CT >::dummy_begin ( )
inlinenoexcept

Definition at line 893 of file xscalar.hpp.

◆ dummy_end() [1/2]

template<class CT >
auto xt::xscalar< CT >::dummy_end ( ) const
inlinenoexcept

Definition at line 911 of file xscalar.hpp.

◆ dummy_end() [2/2]

template<class CT >
auto xt::xscalar< CT >::dummy_end ( )
inlinenoexcept

Definition at line 899 of file xscalar.hpp.

◆ element() [1/2]

template<class CT >
template<class It >
auto xt::xscalar< CT >::element ( It ,
It  ) const -> const_reference
inlinenoexcept

Definition at line 589 of file xscalar.hpp.

◆ element() [2/2]

template<class CT >
template<class It >
auto xt::xscalar< CT >::element ( It ,
It  ) -> reference
inlinenoexcept

Definition at line 582 of file xscalar.hpp.

◆ end() [1/4]

template<class CT >
template<layout_type L>
auto xt::xscalar< CT >::end ( ) const -> const_iterator
inlinenoexcept

Definition at line 643 of file xscalar.hpp.

◆ end() [2/4]

template<class CT >
template<layout_type L>
auto xt::xscalar< CT >::end ( ) -> iterator
inlinenoexcept

Definition at line 629 of file xscalar.hpp.

◆ end() [3/4]

template<class CT >
template<class S , layout_type L>
auto xt::xscalar< CT >::end ( const S & shape) const -> const_broadcast_iterator<S, L>
inlinenoexcept

Definition at line 731 of file xscalar.hpp.

◆ end() [4/4]

template<class CT >
template<class S , layout_type L>
auto xt::xscalar< CT >::end ( const S & shape) -> broadcast_iterator<S, L>
inlinenoexcept

Definition at line 717 of file xscalar.hpp.

◆ expression() [1/2]

template<class CT >
auto xt::xscalar< CT >::expression ( ) const
inlinenoexcept

Definition at line 601 of file xscalar.hpp.

◆ expression() [2/2]

template<class CT >
auto xt::xscalar< CT >::expression ( )
inlinenoexcept

Definition at line 595 of file xscalar.hpp.

◆ flat() [1/2]

template<class CT >
auto xt::xscalar< CT >::flat ( size_type i) const
inlinenoexcept

Definition at line 935 of file xscalar.hpp.

◆ flat() [2/2]

template<class CT >
auto xt::xscalar< CT >::flat ( size_type i)
inlinenoexcept

Definition at line 929 of file xscalar.hpp.

◆ front() [1/2]

template<class CT >
auto xt::xaccessible< D >::front ( )
inline

Returns a reference to the first element of the expression.

Definition at line 108 of file xaccessible.hpp.

◆ front() [2/2]

template<class CT >
auto xt::xconst_accessible< D >::front ( ) const
inline

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

Definition at line 114 of file xaccessible.hpp.

◆ has_linear_assign()

template<class CT >
template<class S >
bool xt::xscalar< CT >::has_linear_assign ( const S & strides) const
inlinenoexcept

Definition at line 615 of file xscalar.hpp.

◆ is_contiguous()

template<class CT >
bool xt::xscalar< CT >::is_contiguous ( ) const
inlinenoexcept

Definition at line 545 of file xscalar.hpp.

◆ layout()

template<class CT >
layout_type xt::xscalar< CT >::layout ( ) const
inlinenoexcept

Definition at line 539 of file xscalar.hpp.

◆ linear_begin() [1/2]

template<class CT >
auto xt::xscalar< CT >::linear_begin ( ) const
inlinenoexcept

Definition at line 805 of file xscalar.hpp.

◆ linear_begin() [2/2]

template<class CT >
auto xt::xscalar< CT >::linear_begin ( )
inlinenoexcept

Definition at line 793 of file xscalar.hpp.

◆ linear_cbegin()

template<class CT >
auto xt::xscalar< CT >::linear_cbegin ( ) const
inlinenoexcept

Definition at line 817 of file xscalar.hpp.

◆ linear_cend()

template<class CT >
auto xt::xscalar< CT >::linear_cend ( ) const
inlinenoexcept

Definition at line 823 of file xscalar.hpp.

◆ linear_crbegin()

template<class CT >
auto xt::xscalar< CT >::linear_crbegin ( ) const
inlinenoexcept

Definition at line 853 of file xscalar.hpp.

◆ linear_crend()

template<class CT >
auto xt::xscalar< CT >::linear_crend ( ) const
inlinenoexcept

Definition at line 859 of file xscalar.hpp.

◆ linear_end() [1/2]

template<class CT >
auto xt::xscalar< CT >::linear_end ( ) const
inlinenoexcept

Definition at line 811 of file xscalar.hpp.

◆ linear_end() [2/2]

template<class CT >
auto xt::xscalar< CT >::linear_end ( )
inlinenoexcept

Definition at line 799 of file xscalar.hpp.

◆ linear_rbegin() [1/2]

template<class CT >
auto xt::xscalar< CT >::linear_rbegin ( ) const
inlinenoexcept

Definition at line 841 of file xscalar.hpp.

◆ linear_rbegin() [2/2]

template<class CT >
auto xt::xscalar< CT >::linear_rbegin ( )
inlinenoexcept

Definition at line 829 of file xscalar.hpp.

◆ linear_rend() [1/2]

template<class CT >
auto xt::xscalar< CT >::linear_rend ( ) const
inlinenoexcept

Definition at line 847 of file xscalar.hpp.

◆ linear_rend() [2/2]

template<class CT >
auto xt::xscalar< CT >::linear_rend ( )
inlinenoexcept

Definition at line 835 of file xscalar.hpp.

◆ load_simd()

template<class CT >
template<class align , class requested_type , std::size_t N>
auto xt::xscalar< CT >::load_simd ( size_type ) const -> xt_simd::simd_return_type<value_type, requested_type>
inline

Definition at line 949 of file xscalar.hpp.

◆ operator const value_type &()

template<class CT >
xt::xscalar< CT >::operator const value_type & ( ) const
inlinenoexcept

Definition at line 514 of file xscalar.hpp.

◆ operator value_type &()

template<class CT >
xt::xscalar< CT >::operator value_type & ( )
inlinenoexcept

Definition at line 508 of file xscalar.hpp.

◆ operator()() [1/2]

template<class CT >
template<class... Args>
auto xt::xscalar< CT >::operator() ( Args... ) const -> const_reference
inlinenoexcept

Definition at line 567 of file xscalar.hpp.

◆ operator()() [2/2]

template<class CT >
template<class... Args>
auto xt::xscalar< CT >::operator() ( Args... ) -> reference
inlinenoexcept

Definition at line 552 of file xscalar.hpp.

◆ periodic() [1/2]

template<class CT >
template<class... Args>
auto xt::xaccessible< D >::periodic ( Args... args) -> reference
inline

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).

Parameters
argsa list of indices specifying the position in the expression. Indices must be integers, the number of indices should be equal to the number of dimensions of the expression.

Definition at line 315 of file xaccessible.hpp.

◆ periodic() [2/2]

template<class CT >
template<class... Args>
auto xt::xconst_accessible< D >::periodic ( Args... args) const -> const_reference
inline

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).

Parameters
argsa list of indices specifying the position in the expression. Indices must be integers, the number of indices should be equal to the number of dimensions of the expression.

Definition at line 115 of file xaccessible.hpp.

◆ rbegin() [1/4]

template<class CT >
template<layout_type L>
auto xt::xscalar< CT >::rbegin ( ) const -> const_reverse_iterator
inlinenoexcept

Definition at line 678 of file xscalar.hpp.

◆ rbegin() [2/4]

template<class CT >
template<layout_type L>
auto xt::xscalar< CT >::rbegin ( ) -> reverse_iterator
inlinenoexcept

Definition at line 664 of file xscalar.hpp.

◆ rbegin() [3/4]

template<class CT >
template<class S , layout_type L>
auto xt::xscalar< CT >::rbegin ( const S & shape) const -> const_reverse_broadcast_iterator<S, L>
inlinenoexcept

Definition at line 766 of file xscalar.hpp.

◆ rbegin() [4/4]

template<class CT >
template<class S , layout_type L>
auto xt::xscalar< CT >::rbegin ( const S & shape) -> reverse_broadcast_iterator<S, L>
inlinenoexcept

Definition at line 752 of file xscalar.hpp.

◆ rend() [1/4]

template<class CT >
template<layout_type L>
auto xt::xscalar< CT >::rend ( ) const -> const_reverse_iterator
inlinenoexcept

Definition at line 685 of file xscalar.hpp.

◆ rend() [2/4]

template<class CT >
template<layout_type L>
auto xt::xscalar< CT >::rend ( ) -> reverse_iterator
inlinenoexcept

Definition at line 671 of file xscalar.hpp.

◆ rend() [3/4]

template<class CT >
template<class S , layout_type L>
auto xt::xscalar< CT >::rend ( const S & shape) const -> const_reverse_broadcast_iterator<S, L>
inlinenoexcept

Definition at line 773 of file xscalar.hpp.

◆ rend() [4/4]

template<class CT >
template<class S , layout_type L>
auto xt::xscalar< CT >::rend ( const S & shape) -> reverse_broadcast_iterator<S, L>
inlinenoexcept

Definition at line 759 of file xscalar.hpp.

◆ shape() [1/2]

template<class CT >
auto xt::xscalar< CT >::shape ( ) const
inlinenoexcept

Definition at line 526 of file xscalar.hpp.

◆ shape() [2/2]

template<class CT >
auto xt::xscalar< CT >::shape ( size_type i) const
inlinenoexcept

Definition at line 533 of file xscalar.hpp.

◆ size()

template<class CT >
auto xt::xscalar< CT >::size ( ) const
inlinenoexcept

Definition at line 520 of file xscalar.hpp.

◆ stepper_begin() [1/2]

template<class CT >
template<class S >
auto xt::xscalar< CT >::stepper_begin ( const S & ) const -> const_stepper
inlinenoexcept

Definition at line 880 of file xscalar.hpp.

◆ stepper_begin() [2/2]

template<class CT >
template<class S >
auto xt::xscalar< CT >::stepper_begin ( const S & ) -> stepper
inlinenoexcept

Definition at line 866 of file xscalar.hpp.

◆ stepper_end() [1/2]

template<class CT >
template<class S >
auto xt::xscalar< CT >::stepper_end ( const S & ,
layout_type  ) const -> const_stepper
inlinenoexcept

Definition at line 887 of file xscalar.hpp.

◆ stepper_end() [2/2]

template<class CT >
template<class S >
auto xt::xscalar< CT >::stepper_end ( const S & ,
layout_type  ) -> stepper
inlinenoexcept

Definition at line 873 of file xscalar.hpp.

◆ store_simd()

template<class CT >
template<class align , class simd >
void xt::xscalar< CT >::store_simd ( size_type i,
const simd & e )
inline

Definition at line 942 of file xscalar.hpp.

◆ unchecked() [1/2]

template<class CT >
template<class... Args>
auto xt::xscalar< CT >::unchecked ( Args... ) const -> const_reference
inlinenoexcept

Definition at line 575 of file xscalar.hpp.

◆ unchecked() [2/2]

template<class CT >
template<class... Args>
auto xt::xscalar< CT >::unchecked ( Args... ) -> reference
inlinenoexcept

Definition at line 560 of file xscalar.hpp.

Friends And Related Symbol Documentation

◆ xaccessible< self_type >

template<class CT >
friend class xaccessible< self_type >
friend

Definition at line 296 of file xscalar.hpp.

◆ xconst_accessible< self_type >

Definition at line 296 of file xscalar.hpp.

◆ xconst_iterable< self_type >

template<class CT >
friend class xconst_iterable< self_type >
friend

Definition at line 296 of file xscalar.hpp.

◆ xiterable< self_type >

template<class CT >
friend class xiterable< self_type >
friend

Definition at line 296 of file xscalar.hpp.

Member Data Documentation

◆ contiguous_layout

template<class CT >
constexpr bool xt::xscalar< CT >::contiguous_layout = true
staticconstexpr

Definition at line 146 of file xscalar.hpp.

◆ static_layout

template<class CT >
constexpr layout_type xt::xscalar< CT >::static_layout = layout_type::any
staticconstexpr

Definition at line 145 of file xscalar.hpp.


The documentation for this class was generated from the following files: