32 #ifndef MLN_FUN_FROM_ACCU_HH
33 # define MLN_FUN_FROM_ACCU_HH
35 # include <mln/fun/unary_param.hh>
36 # include <mln/core/concept/accumulator.hh>
62 template <
typename A,
typename T>
65 typedef set_unary_ ret;
66 typedef typename A::result result;
67 typedef typename A::argument argument;
70 static result read(
const param_t& accu_,
const argument& x);
80 # ifndef MLN_INCLUDE_ONLY
88 from_accu<A>::from_accu()
89 : unary_param<from_accu<A>, A*>()
97 from_accu<A>::from_accu(A* a)
98 : unary_param<from_accu<A>, A*>(a)
113 template <
typename A,
typename T>
115 typename set_unary_<mln::fun::from_accu<A>,
mln::Object, T>::result
116 set_unary_<mln::fun::from_accu<A>,
120 mln_precondition(accu_ != 0);
123 return accu_->to_result ();
132 # endif // ! MLN_INCLUDE_ONLY
136 #endif // ! MLN_FUN_FROM_ACCU_HH