#ifndef TYPEASVALUE_SRC_LIST_OPERATION_HIGHER_FOLD_H_ #define TYPEASVALUE_SRC_LIST_OPERATION_HIGHER_FOLD_H_ namespace tav { template < template class Function, typename Initial, typename Current > struct Fold { typedef Eval, Eval>> >> type; }; template < template class Function, typename Initial > struct Fold { typedef Initial type; }; } #endif // TYPEASVALUE_SRC_LIST_OPERATION_HIGHER_FOLD_H_