From e9f9c2777fa8380ee6e5dc3712719d3925115b4a Mon Sep 17 00:00:00 2001 From: "Dr. Carsten Leue" Date: Tue, 10 Oct 2023 22:40:59 +0200 Subject: [PATCH] fix: change order of generics for flap Signed-off-by: Dr. Carsten Leue --- array/array.go | 4 ++-- either/either.go | 6 +++--- identity/identity.go | 4 ++-- io/io.go | 2 +- option/option.go | 6 +++--- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/array/array.go b/array/array.go index a9b154c..20320a7 100644 --- a/array/array.go +++ b/array/array.go @@ -309,10 +309,10 @@ func Push[A any](a A) func([]A) []A { return G.Push[[]A](a) } -func MonadFlap[A, B any](fab []func(A) B, a A) []B { +func MonadFlap[B, A any](fab []func(A) B, a A) []B { return G.MonadFlap[func(A) B, []func(A) B, []B, A, B](fab, a) } -func Flap[A, B any](a A) func([]func(A) B) []B { +func Flap[B, A any](a A) func([]func(A) B) []B { return G.Flap[func(A) B, []func(A) B, []B, A, B](a) } diff --git a/either/either.go b/either/either.go index d84ede4..bc6738f 100644 --- a/either/either.go +++ b/either/either.go @@ -248,12 +248,12 @@ func Swap[E, A any](val Either[E, A]) Either[A, E] { return MonadFold(val, Right[A, E], Left[E, A]) } -func MonadFlap[E, A, B any](fab Either[E, func(A) B], a A) Either[E, B] { +func MonadFlap[E, B, A any](fab Either[E, func(A) B], a A) Either[E, B] { return FC.MonadFlap(MonadMap[E, func(A) B, B], fab, a) } -func Flap[E, A, B any](a A) func(Either[E, func(A) B]) Either[E, B] { - return F.Bind2nd(MonadFlap[E, A, B], a) +func Flap[E, B, A any](a A) func(Either[E, func(A) B]) Either[E, B] { + return F.Bind2nd(MonadFlap[E, B, A], a) } func MonadAlt[E, A any](fa Either[E, A], that L.Lazy[Either[E, A]]) Either[E, A] { diff --git a/identity/identity.go b/identity/identity.go index 9fcd6c7..33979c5 100644 --- a/identity/identity.go +++ b/identity/identity.go @@ -64,10 +64,10 @@ func ChainFirst[A, B any](f func(A) B) func(A) A { return G.ChainFirst(f) } -func MonadFlap[A, B any](fab func(A) B, a A) B { +func MonadFlap[B, A any](fab func(A) B, a A) B { return G.MonadFlap[func(A) B](fab, a) } -func Flap[A, B any](a A) func(func(A) B) B { +func Flap[B, A any](a A) func(func(A) B) B { return G.Flap[func(A) B](a) } diff --git a/io/io.go b/io/io.go index 2fbf64d..a8dd08f 100644 --- a/io/io.go +++ b/io/io.go @@ -139,7 +139,7 @@ func Defer[A any](gen func() IO[A]) IO[A] { return G.Defer[IO[A]](gen) } -func MonadFlap[A, B any](fab IO[func(A) B], a A) IO[B] { +func MonadFlap[B, A any](fab IO[func(A) B], a A) IO[B] { return G.MonadFlap[func(A) B, IO[func(A) B], IO[B], A, B](fab, a) } diff --git a/option/option.go b/option/option.go index b51a794..dc43b57 100644 --- a/option/option.go +++ b/option/option.go @@ -147,10 +147,10 @@ func Filter[A any](pred func(A) bool) func(Option[A]) Option[A] { return Fold(None[A], F.Ternary(pred, Of[A], F.Ignore1of1[A](None[A]))) } -func MonadFlap[A, B any](fab Option[func(A) B], a A) Option[B] { +func MonadFlap[B, A any](fab Option[func(A) B], a A) Option[B] { return FC.MonadFlap(MonadMap[func(A) B, B], fab, a) } -func Flap[A, B any](a A) func(Option[func(A) B]) Option[B] { - return F.Bind2nd(MonadFlap[A, B], a) +func Flap[B, A any](a A) func(Option[func(A) B]) Option[B] { + return F.Bind2nd(MonadFlap[B, A], a) }