#ifndef EOLIAN_CXX_GENERATOR_HH #define EOLIAN_CXX_GENERATOR_HH #include // EXPERIMENTAL //#define USE_EOCXX_INHERIT_ONLY //#define USE_EOCXX_MANUAL_OVERRIDES namespace efl { namespace eolian { namespace grammar { template struct is_generator : std::false_type {}; template struct is_eager_generator : std::false_type {}; template struct is_generator : is_generator {}; template struct is_eager_generator : is_eager_generator {}; template struct is_generator : is_generator {}; template struct is_eager_generator : is_eager_generator {}; template struct is_generator : is_generator {}; template struct is_eager_generator : is_eager_generator {}; template struct is_generator : is_generator {}; template struct is_eager_generator : is_eager_generator {}; template struct is_generator : is_generator {}; template struct is_eager_generator : is_eager_generator {}; template struct is_generator : is_generator {}; template struct is_eager_generator : is_eager_generator {}; template struct is_generator : is_generator {}; template struct is_eager_generator : is_eager_generator {}; // template // struct is_generator : is_eager_generator {}; template ::value>::type> G as_generator(G&& g) { return g; } } } } #endif