From 14af5e8bb143b9ff3da6a84a6ad8b16c5deb4773 Mon Sep 17 00:00:00 2001 From: Serhii Khoma Date: Sat, 24 Oct 2020 15:27:23 +0300 Subject: [PATCH] fix: Fix `Foldable1 (Coyoneda f)` instance --- src/Data/Coyoneda.purs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Data/Coyoneda.purs b/src/Data/Coyoneda.purs index d60ee65..329c64e 100644 --- a/src/Data/Coyoneda.purs +++ b/src/Data/Coyoneda.purs @@ -22,7 +22,7 @@ import Data.Exists (Exists, runExists, mkExists) import Data.Foldable (class Foldable, foldMap, foldl, foldr) import Data.Functor.Invariant (class Invariant, imapF) import Data.Ord (class Ord1, compare1) -import Data.Semigroup.Foldable (class Foldable1, foldMap1) +import Data.Semigroup.Foldable (class Foldable1, foldMap1, foldr1Default, foldl1Default) import Data.Semigroup.Traversable (class Traversable1, sequence1, traverse1) import Data.Traversable (class Traversable, traverse) @@ -126,6 +126,8 @@ instance traversableCoyoneda :: Traversable f => Traversable (Coyoneda f) where instance foldable1Coyoneda :: Foldable1 f => Foldable1 (Coyoneda f) where foldMap1 f = unCoyoneda \k -> foldMap1 (f <<< k) fold1 = unCoyoneda \k -> foldMap1 k + foldr1 = foldr1Default + foldl1 = foldl1Default instance traversable1Coyoneda :: Traversable1 f => Traversable1 (Coyoneda f) where traverse1 f = unCoyoneda \k -> map liftCoyoneda <<< traverse1 (f <<< k)