29 #ifndef PETE_PETE_FOREACH_H 30 #define PETE_PETE_FOREACH_H 76 template<
class Expr,
class FTag,
class CTag>
80 inline static Type_t apply(
const Expr& expr,
const FTag& f,
const CTag&)
86 template<
class Expr,
class FTag,
class CTag>
92 template<
class Op,
class A,
class FTag,
class CTag>
103 template<
class Op,
class A,
class B,
class FTag,
class CTag>
117 template<
class Op,
class A,
class B,
class C,
class FTag,
class CTag>
133 #ifndef PETE_USER_DEFINED_EXPRESSION 138 template<
class T,
class FTag,
class CTag>
148 #endif // !PETE_USER_DEFINED_EXPRESSION 153 template<
class T,
class FTag,
class CTag>
165 #endif // PETE_PETE_FOREACH_H DeReference< Right >::Return_t right() const
typename ForEach< A, FTag, CTag >::Type_t TypeA_t
typename Combine1< TypeA_t, Op, CTag >::Type_t Type_t
static Type_t apply(const Expr &expr, const FTag &f, const CTag &)
typename ForEach< T, FTag, CTag >::Type_t Type_t
helper functions for EinsplineSetBuilder
typename ForEach< A, FTag, CTag >::Type_t TypeA_t
typename LeafFunctor< Expr, FTag >::Type_t Type_t
ForEach< Expr, FTag, CTag >::Type_t forEach(const Expr &e, const FTag &f, const CTag &c)
const Op & operation() const
const Op & operation() const
DeReference< Left >::Return_t left() const
static Type_t combine(const A &a, const B &b, const C &c, const Op &op, const Tag &t)
static Type_t apply(const Reference< T > &ref, const FTag &f, const CTag &c)
typename ForEach< C, FTag, CTag >::Type_t TypeC_t
typename ForEach< T, FTag, CTag >::Type_t Type_t
typename ForEach< A, FTag, CTag >::Type_t TypeA_t
DeReference< Left >::Return_t left() const
static Type_t apply(const Expression< T > &expr, const FTag &f, const CTag &c)
const T & reference() const
static Type_t apply(const BinaryNode< Op, A, B > &expr, const FTag &f, const CTag &c)
const Op & operation() const
typename ForEach< B, FTag, CTag >::Type_t TypeB_t
DeReference< Child >::Return_t child() const
typename Combine2< TypeA_t, TypeB_t, Op, CTag >::Type_t Type_t
const Expression_t & expression() const
static Type_t apply(const TrinaryNode< Op, A, B, C > &expr, const FTag &f, const CTag &c)
typename Combine3< TypeA_t, TypeB_t, TypeC_t, Op, CTag >::Type_t Type_t
typename ForEach< B, FTag, CTag >::Type_t TypeB_t
DeReference< Middle >::Return_t middle() const
double B(double x, int k, int i, const std::vector< double > &t)
typename Combine2< Type1_t, C, Op, Tag >::Type_t Type_t
static Type_t apply(const UnaryNode< Op, A > &expr, const FTag &f, const CTag &c)
DeReference< Right >::Return_t right() const
static Type_t combine(const A &a, const Op &, const Tag &)