4#ifndef DUNE_COMMON_FORLOOP_HH 
    5#define DUNE_COMMON_FORLOOP_HH 
   20  template< 
template< 
class, 
class > 
class Operation, 
template< 
int > 
class Value, 
int first, 
int last >
 
   22    : 
public Operation< Value< first >, GenericForLoop< Operation, Value, first+1, last > >
 
   24    static_assert( (first <= last), 
"GenericForLoop: first > last" );
 
   27  template< 
template< 
class, 
class > 
class Operation, 
template< 
int > 
class Value, 
int last >
 
   28  class GenericForLoop< Operation, Value, last, last >
 
   29    : 
public Value< last >
 
   35  namespace ForLoopHelper
 
   38    template< 
class A, 
class B >
 
   42      template< 
typename... Params >
 
   43      static void apply ( Params&&... params )
 
   45        A::apply( std::forward<Params>(params)... );
 
   46        B::apply( std::forward<Params>(params)... );
 
  107  template< 
template< 
int > 
class Operation, 
int first, 
int last >
 
  109    : 
public GenericForLoop< ForLoopHelper::Apply, Operation, first, last >
 
  111    static_assert( (first <= last), 
"ForLoop: first > last" );
 
A static loop using TMP.
Definition: forloop.hh:110
 
Dune namespace.
Definition: alignment.hh:10