Skip to content

Bifunctor

BiFunctor

Bases: Generic[F, A, B], Protocol

BiFunctor

Source code in funclift/bifunctor.py
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
class BiFunctor(Generic[F, A, B], Protocol):
    """BiFunctor"""

    def bimap(self, fl: Callable[[A], C],
              fr: Callable[[B], D]) -> BiFunctor[F, C, D]:
        """_summary_

        Args:
            fl (Callable[[A], C]): _description_
            fr (Callable[[B], D]): _description_

        Returns:
            BFunctor[F, C, D]: _description_
        """
        ...

    def first(self, fl: Callable[[A], C]) -> BiFunctor[F, C, B]:
        """_summary_

        Args:
            fl (Callable[[A], C]): _description_

        Returns:
            BFunctor[F, C, B]: _description_
        """
        ...

    def second(self, fr: Callable[[B], D]) -> BiFunctor[F, A, D]:
        """_summary_

        Args:
            fr (Callable[[B], D]): _description_

        Returns:
            BFunctor[F, A, D]: _description_
        """
        ...

bimap(fl, fr)

summary

Parameters:

Name Type Description Default
fl Callable[[A], C]

description

required
fr Callable[[B], D]

description

required

Returns:

Type Description
BiFunctor[F, C, D]

BFunctor[F, C, D]: description

Source code in funclift/bifunctor.py
17
18
19
20
21
22
23
24
25
26
27
28
def bimap(self, fl: Callable[[A], C],
          fr: Callable[[B], D]) -> BiFunctor[F, C, D]:
    """_summary_

    Args:
        fl (Callable[[A], C]): _description_
        fr (Callable[[B], D]): _description_

    Returns:
        BFunctor[F, C, D]: _description_
    """
    ...

first(fl)

summary

Parameters:

Name Type Description Default
fl Callable[[A], C]

description

required

Returns:

Type Description
BiFunctor[F, C, B]

BFunctor[F, C, B]: description

Source code in funclift/bifunctor.py
30
31
32
33
34
35
36
37
38
39
def first(self, fl: Callable[[A], C]) -> BiFunctor[F, C, B]:
    """_summary_

    Args:
        fl (Callable[[A], C]): _description_

    Returns:
        BFunctor[F, C, B]: _description_
    """
    ...

second(fr)

summary

Parameters:

Name Type Description Default
fr Callable[[B], D]

description

required

Returns:

Type Description
BiFunctor[F, A, D]

BFunctor[F, A, D]: description

Source code in funclift/bifunctor.py
41
42
43
44
45
46
47
48
49
50
def second(self, fr: Callable[[B], D]) -> BiFunctor[F, A, D]:
    """_summary_

    Args:
        fr (Callable[[B], D]): _description_

    Returns:
        BFunctor[F, A, D]: _description_
    """
    ...