functor

package module
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 10, 2022 License: MIT Imports: 0 Imported by: 1

README

go-functor

Implements functor and functor generators in Golang (1.18+)

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Functor

type Functor func()

func MakeFunctor1_0

func MakeFunctor1_0[T1 any](f func(T1), a1 T1) Functor

func(T1) -> func()

func MakeFunctor2_0

func MakeFunctor2_0[T1, T2 any](f func(T1, T2), a1 T1, a2 T2) Functor

func(T1, T2) -> func()

func MakeFunctor3_0

func MakeFunctor3_0[T1, T2, T3 any](f func(T1, T2, T3), a1 T1, a2 T2, a3 T3) Functor

func(T1, T2, T3) -> func()

func MakeFunctor4_0

func MakeFunctor4_0[T1, T2, T3, T4 any](f func(T1, T2, T3, T4), a1 T1, a2 T2, a3 T3, a4 T4) Functor

func(T1, T2, T3, T4) -> func()

type Functor1

type Functor1[T1 any] func(T1)

func MakeFunctor2_1

func MakeFunctor2_1[T1, T2 any](f func(T1, T2), a1 T1) Functor1[T2]

func(T1, T2) -> func(T1)

func MakeFunctor3_1

func MakeFunctor3_1[T1, T2, T3 any](f func(T1, T2, T3), a1 T1, a2 T2) Functor1[T3]

func(T1, T2, T3) -> func(T1)

func MakeFunctor4_1

func MakeFunctor4_1[T1, T2, T3, T4 any](f func(T1, T2, T3, T4), a1 T1, a2 T2, a3 T3) Functor1[T4]

func(T1, T2, T3, T4) -> func(T1)

type Functor2

type Functor2[T1, T2 any] func(T1, T2)

func MakeFunctor3_2

func MakeFunctor3_2[T1, T2, T3 any](f func(T1, T2, T3), a1 T1) Functor2[T2, T3]

func(T1, T2, T3) -> func(T1, T2, T3)

func MakeFunctor4_2

func MakeFunctor4_2[T1, T2, T3, T4 any](f func(T1, T2, T3, T4), a1 T1, a2 T2) Functor2[T3, T4]

func(T1, T2, T3, T4) R -> func(T1, T2, T3, T4) R

type Functor3

type Functor3[T1, T2, T3 any] func(T1, T2, T3)

func MakeFunctor4_3

func MakeFunctor4_3[T1, T2, T3, T4 any](f func(T1, T2, T3, T4), a1 T1) Functor3[T2, T3, T4]

func(T1, T2, T3, T4) R -> func(T1, T2, T3, T4) R

type FunctorR

type FunctorR[R any] func() R

func MakeFunctorR1_0

func MakeFunctorR1_0[R, T1 any](f func(T1) R, a1 T1) FunctorR[R]

func(T1) R -> func() R

func MakeFunctorR2_0

func MakeFunctorR2_0[R, T1, T2 any](f func(T1, T2) R, a1 T1, a2 T2) FunctorR[R]

func(T1, T2) R -> func() R

func MakeFunctorR3_0

func MakeFunctorR3_0[R, T1, T2, T3 any](f func(T1, T2, T3) R, a1 T1, a2 T2, a3 T3) FunctorR[R]

func(T1, T2, T3) R -> func() R

func MakeFunctorR4_0

func MakeFunctorR4_0[R, T1, T2, T3, T4 any](f func(T1, T2, T3, T4) R, a1 T1, a2 T2, a3 T3, a4 T4) FunctorR[R]

func(T1, T2, T3, T4) R -> func(T1, T2, T3, T4) R

type FunctorR1

type FunctorR1[R, T1 any] func(T1) R

func MakeFunctorR2_1

func MakeFunctorR2_1[R, T1, T2 any](f func(T1, T2) R, a1 T1) FunctorR1[R, T2]

func(T1, T2) R -> func(T1) R

func MakeFunctorR3_1

func MakeFunctorR3_1[R, T1, T2, T3 any](f func(T1, T2, T3) R, a1 T1, a2 T2) FunctorR1[R, T3]

func(T1, T2, T3) R -> func(T1) R

func MakeFunctorR4_1

func MakeFunctorR4_1[R, T1, T2, T3, T4 any](f func(T1, T2, T3, T4) R, a1 T1, a2 T2, a3 T3) FunctorR1[R, T4]

func(T1, T2, T3, T4) R -> func(T1, T2, T3, T4) R

type FunctorR2

type FunctorR2[R, T1, T2 any] func(T1, T2) R

func MakeFunctorR3_2

func MakeFunctorR3_2[R, T1, T2, T3 any](f func(T1, T2, T3) R, a1 T1) FunctorR2[R, T2, T3]

func(T1, T2, T3) R -> func(T1, T2) R

func MakeFunctorR4_2

func MakeFunctorR4_2[R, T1, T2, T3, T4 any](f func(T1, T2, T3, T4) R, a1 T1, a2 T2) FunctorR2[R, T3, T4]

func(T1, T2, T3, T4) R -> func(T1, T2, T3, T4) R

type FunctorR3

type FunctorR3[R, T1, T2, T3 any] func(T1, T2, T3) R

func MakeFunctorR4_3

func MakeFunctorR4_3[R, T1, T2, T3, T4 any](f func(T1, T2, T3, T4) R, a1 T1) FunctorR3[R, T2, T3, T4]

func(T1, T2, T3, T4) R -> func(T1, T2, T3, T4) R

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL