1: <?php
2:
3: namespace Chromabits\Nucleus\Data\Interfaces;
4:
5: use Closure;
6:
7: /**
8: * Interface FunctorInterface
9: *
10: * WIP
11: *
12: * @author Eduardo Trujillo <ed@chromabits.com>
13: * @package Chromabits\Nucleus\Monads\Interfaces
14: */
15: interface FunctorInterface
16: {
17: /**
18: * Apply a function to this functor.
19: *
20: * @param callable|Closure $closure
21: *
22: * @return FunctorInterface
23: */
24: public function fmap(callable $closure);
25: }
26: