QMCPACK
ForEach< UnaryNode< Op, A >, FTag, CTag > Struct Template Reference
+ Collaboration diagram for ForEach< UnaryNode< Op, A >, FTag, CTag >:

Public Types

using TypeA_t = typename ForEach< A, FTag, CTag >::Type_t
 
using Type_t = typename Combine1< TypeA_t, Op, CTag >::Type_t
 

Static Public Member Functions

static Type_t apply (const UnaryNode< Op, A > &expr, const FTag &f, const CTag &c)
 

Detailed Description

template<class Op, class A, class FTag, class CTag>
struct qmcplusplus::ForEach< UnaryNode< Op, A >, FTag, CTag >

Definition at line 93 of file ForEach.h.

Member Typedef Documentation

◆ Type_t

using Type_t = typename Combine1<TypeA_t, Op, CTag>::Type_t

Definition at line 96 of file ForEach.h.

◆ TypeA_t

using TypeA_t = typename ForEach<A, FTag, CTag>::Type_t

Definition at line 95 of file ForEach.h.

Member Function Documentation

◆ apply()

static Type_t apply ( const UnaryNode< Op, A > &  expr,
const FTag &  f,
const CTag &  c 
)
inlinestatic

Definition at line 97 of file ForEach.h.

References UnaryNode< Op, Child >::child(), Combine1< A, Op, Tag >::combine(), and UnaryNode< Op, Child >::operation().

98  {
99  return Combine1<TypeA_t, Op, CTag>::combine(ForEach<A, FTag, CTag>::apply(expr.child(), f, c), expr.operation(), c);
100  }
static Type_t apply(const Expr &expr, const FTag &f, const CTag &)
Definition: ForEach.h:80
static Type_t combine(const A &a, const Op &, const Tag &)
Definition: Combiners.h:89

The documentation for this struct was generated from the following file: