27 #ifndef MLN_CORE_CONCEPT_FUNCTION_HH
28 # define MLN_CORE_CONCEPT_FUNCTION_HH
34 # include <mln/core/concept/object.hh>
41 template <
typename E>
struct Function;
42 template <
typename E>
struct Function_n2v;
43 template <
typename E>
struct Function_v2v;
44 template <
typename E>
struct Function_v2b;
45 template <
typename E>
struct Function_vv2v;
46 template <
typename E>
struct Function_vv2b;
104 template <
typename E>
131 template <
typename E>
159 template <
typename E>
188 template <
typename E>
215 template <
typename E>
227 # ifndef MLN_INCLUDE_ONLY
231 template <
typename E>
235 typedef mln_result(E) result;
238 template <typename E>
245 template <
typename E>
255 template <
typename E>
261 template <
typename E>
271 template <
typename E>
273 Function_v2v<E>::Function_v2v()
277 template <
typename E>
279 Function_v2v<E>::Function_v2v(
const Function_v2v<E>& rhs)
286 template <
typename E>
288 Function_v2b<E>::Function_v2b()
292 template <
typename E>
294 Function_v2b<E>::Function_v2b(
const Function_v2b<E>& rhs)
295 : Function_v2v<E>(rhs)
301 template <
typename E>
303 Function_vv2v<E>::Function_vv2v()
307 template <
typename E>
309 Function_vv2v<E>::Function_vv2v(
const Function_vv2v<E>& rhs)
316 template <
typename E>
318 Function_vv2b<E>::Function_vv2b()
322 template <
typename E>
324 Function_vv2b<E>::Function_vv2b(
const Function_vv2b<E>& rhs)
329 # endif // ! MLN_INCLUDE_ONLY
334 #endif // ! MLN_CORE_CONCEPT_FUNCTION_HH