3#ifndef pRC_CORE_TENSOR_VIEWS_REFERENCE_H
4#define pRC_CORE_TENSOR_VIEWS_REFERENCE_H
10 template<
class T,
class N>
18 :
public Assignable<T, Sizes<Ns...>, Reference<T, Sizes<Ns...>>>
29 using Base::operator=;
32 If<
IsSatisfied<(
sizeof...(Is) ==
typename Base::Dimension())>> = 0>
39 If<
IsSatisfied<(
sizeof...(Is) ==
typename Base::Dimension())>> = 0>
45 constexpr decltype(
auto)
operator()(
51 constexpr decltype(
auto)
operator()(
52 typename Base::Subscripts
const &
subscripts)
const
57 constexpr decltype(
auto)
operator[](
Index const index)
62 constexpr decltype(
auto)
operator[](
Index const index)
const
Definition sequence.hpp:56
Definition assignable.hpp:22
constexpr decltype(auto) operator()(Is const ... indices) const
Definition reference.hpp:40
constexpr decltype(auto) operator()(Is const ... indices)
Definition reference.hpp:33
Reference(Tensor< T, Ns... > &a)
Definition reference.hpp:24
Definition reference.hpp:11
pRC::Float<> T
Definition externs_nonTT.hpp:1
Definition diagonal.hpp:11
Reference(Tensor< T, Ns... > &) -> Reference< T, Sizes< Ns... > >
static constexpr auto makeConstantSequence()
Definition sequence.hpp:402
Size Index
Definition type_traits.hpp:21
std::size_t Size
Definition type_traits.hpp:20
std::enable_if_t< B{}, int > If
Definition type_traits.hpp:68
Constant< Bool, B > IsSatisfied
Definition type_traits.hpp:71
AddConst< T > & asConst(T &a)
Definition type_traits.hpp:208