Skip to content

Tree

Tree

Bases: ABC, Generic[A]

Tree is a monad.

Source code in funclift/types/tree.py
19
20
21
22
23
24
25
26
27
28
29
30
class Tree(ABC, Generic[A]):
    """Tree is a monad."""

    @staticmethod
    def pure(b: B) -> Tree[B]:
        return Node(b, [])

    @abstractmethod
    def fmap(self, f: Callable[[A], B]) -> Tree[B]: ...

    @abstractmethod
    def flatmap(self, f: Callable[[A], Tree[B]]) -> Tree[B]: ...