22 template <SizeT L,
class Xpr,
class F = NoF>
31 inline decltype(
auto)
operator()(
const PosT&
last)
const;
33 inline decltype(
auto)
operator()()
const;
42 typedef decltype(mXpr.rootSteps(mId)) XPosT;
47 template <SizeT L,
class Xpr,
class F>
50 template <SizeT L,
class Xpr>
54 template <SizeT N, SizeT L,
class Xpr,
class F = NoF>
63 constexpr decltype(
auto)
operator()(
const PosT&
last)
const;
65 constexpr decltype(
auto)
operator()()
const;
72 template <SizeT I,
class PosT>
73 constexpr decltype(
auto) exec(
const PosT&
last)
const;
76 constexpr decltype(
auto) exec()
const;
78 template <SizeT I,
class PosT>
79 inline void exec2(
const PosT&
last)
const;
82 inline void exec2()
const;
86 typedef decltype(mXpr.rootSteps(mId)) XPosT;
92 template <SizeT N, SizeT L,
class Xpr,
class F>
95 template <SizeT N, SizeT L,
class Xpr>
99 template <SizeT L1, SizeT L2,
class Xpr,
class F = NoF>
108 template <
class PosT>
109 inline decltype(
auto)
operator()(
const PosT&
last)
const;
111 inline decltype(
auto)
operator()()
const;
121 typedef decltype(mXpr.rootSteps(mId1)) XPosT1;
122 typedef decltype(mXpr.rootSteps(mId2)) XPosT2;
129 template <SizeT L,
class Xpr,
class F>
132 template <SizeT L,
class Xpr>
136 template <SizeT L,
class Xpr,
class F = NoF>
144 template <
class PosT>
145 inline decltype(
auto)
operator()(
const PosT&
last)
const;
147 inline decltype(
auto)
operator()()
const;
156 typedef decltype(mXpr.rootSteps(mId)) XPosT;
162 template <SizeT N, SizeT L,
class Xpr,
class F = NoF>
170 template <
class PosT>
171 constexpr decltype(
auto)
operator()(
const PosT&
last)
const;
173 constexpr decltype(
auto)
operator()()
const;
181 typedef decltype(mXpr.rootSteps(mId)) XPosT;
constexpr EFor(const IndexId< L > &id, const Xpr &xpr, F &&f)
constexpr decltype(auto) rootSteps(const IndexId< I > &id) const
decltype(auto) rootSteps(const IndexId< I > &id) const
constexpr For(SizeT size, const IndexId< L > &id, const Xpr &xpr, F &&f)
constexpr PFor(SizeT size, const IndexId< L1 > &id1, const IndexId< L2 > &id2, const SizeT *map, const Xpr &xpr, F &&f)
decltype(auto) rootSteps(const IndexId< I > &id) const
constexpr SFor(const IndexId< L > &id, const Xpr &xpr, F &&f)
constexpr decltype(auto) rootSteps(const IndexId< I > &id) const
decltype(auto) rootSteps(const IndexId< I > &id) const
constexpr TFor(SizeT size, const IndexId< L > &id, const Xpr &xpr, F &&f)
Special function objects declarations.
constexpr decltype(auto) mkSFor(const IndexId< L > &id, const Xpr &xpr, F &&f)
decltype(auto) xpr(const Sptr< I > &i)
Sptr< Range > rangeCast(const RangePtr r)
constexpr decltype(auto) mkFor(SizeT size, const IndexId< L > &id, const Xpr &xpr, F &&f)
Xpression base declarations.