24 return [t] {
return t; };
27 template<
typename R,
typename F>
38 return [] {
return Util::Mzero<T> (); };
45 const auto rt1 = t1 ();
46 return rt1 != Util::Mzero<T> () ? rt1 : t2 ();
Lazy_t< T > MakeLazy(const T &t)
Lazy_t< R > MakeLazyF(const F &l)
std::function< T()> Lazy_t
static Lazy_t< T > Mplus(const Lazy_t< T > &t1, const Lazy_t< T > &t2)
static Lazy_t< T > Mzero()