29#ifndef PETE_PETE_FOREACH_H
30#define PETE_PETE_FOREACH_H
74template<
class Expr,
class FTag,
class CTag>
85template<
class Expr,
class FTag,
class CTag>
87forEach(
const Expr &e,
const FTag &f,
const CTag &c)
92template<
class Op,
class A,
class FTag,
class CTag>
107template<
class Op,
class A,
class B,
class FTag,
class CTag>
124template<
class Op,
class A,
class B,
class C,
class FTag,
class CTag>
144#ifndef PETE_USER_DEFINED_EXPRESSION
148template<
class T,
class FTag,
class CTag>
164template<
class T,
class FTag,
class CTag>
ForEach< Expr, FTag, CTag >::Type_t forEach(const Expr &e, const FTag &f, const CTag &c)
DeReference< Left >::Return_t left() const
DeReference< Right >::Return_t right() const
const Op & operation() const
const Expression_t & expression() const
DeReference< Left >::Return_t left() const
DeReference< Right >::Return_t right() const
DeReference< Middle >::Return_t middle() const
const Op & operation() const
DeReference< Child >::Return_t child() const
const Op & operation() const
OLattice< PScalar< PColorMatrix< RComplexFloat, 3 > > > C
static Type_t combine(const A &a, const Op &, const Tag &)
static Type_t combine(const A &a, const B &b, const C &c, const Op &op, const Tag &t)
Combine2< Type1_t, C, Op, Tag >::Type_t Type_t
ForEach< B, FTag, CTag >::Type_t TypeB_t
ForEach< A, FTag, CTag >::Type_t TypeA_t
Combine2< TypeA_t, TypeB_t, Op, CTag >::Type_t Type_t
static Type_t apply(const BinaryNode< Op, A, B > &expr, const FTag &f, const CTag &c)
static Type_t apply(const Expression< T > &expr, const FTag &f, const CTag &c)
ForEach< T, FTag, CTag >::Type_t Type_t
ForEach< T, FTag, CTag >::Type_t Type_t
static Type_t apply(const Reference< T > &ref, const FTag &f, const CTag &c)
Combine3< TypeA_t, TypeB_t, TypeC_t, Op, CTag >::Type_t Type_t
ForEach< C, FTag, CTag >::Type_t TypeC_t
static Type_t apply(const TrinaryNode< Op, A, B, C > &expr, const FTag &f, const CTag &c)
ForEach< B, FTag, CTag >::Type_t TypeB_t
ForEach< A, FTag, CTag >::Type_t TypeA_t
Combine1< TypeA_t, Op, CTag >::Type_t Type_t
ForEach< A, FTag, CTag >::Type_t TypeA_t
static Type_t apply(const UnaryNode< Op, A > &expr, const FTag &f, const CTag &c)
LeafFunctor< Expr, FTag >::Type_t Type_t
static Type_t apply(const Expr &expr, const FTag &f, const CTag &)
const T & reference() const