Skip to content

Commit bf0bee9

Browse files
committed
Merge pull request #178 from treeowl/polyreverse
Make reverse helpers polymorphic
2 parents 91fff04 + 32478c0 commit bf0bee9

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

Data/Sequence.hs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2131,7 +2131,7 @@ instance IsString (Seq Char) where
21312131
reverse :: Seq a -> Seq a
21322132
reverse (Seq xs) = Seq (reverseTree id xs)
21332133

2134-
reverseTree :: (a -> a) -> FingerTree a -> FingerTree a
2134+
reverseTree :: (a -> b) -> FingerTree a -> FingerTree b
21352135
reverseTree _ Empty = Empty
21362136
reverseTree f (Single x) = Single (f x)
21372137
reverseTree f (Deep s pr m sf) =
@@ -2140,13 +2140,13 @@ reverseTree f (Deep s pr m sf) =
21402140
(reverseDigit f pr)
21412141

21422142
{-# INLINE reverseDigit #-}
2143-
reverseDigit :: (a -> a) -> Digit a -> Digit a
2143+
reverseDigit :: (a -> b) -> Digit a -> Digit b
21442144
reverseDigit f (One a) = One (f a)
21452145
reverseDigit f (Two a b) = Two (f b) (f a)
21462146
reverseDigit f (Three a b c) = Three (f c) (f b) (f a)
21472147
reverseDigit f (Four a b c d) = Four (f d) (f c) (f b) (f a)
21482148

2149-
reverseNode :: (a -> a) -> Node a -> Node a
2149+
reverseNode :: (a -> b) -> Node a -> Node b
21502150
reverseNode f (Node2 s a b) = Node2 s (f b) (f a)
21512151
reverseNode f (Node3 s a b c) = Node3 s (f c) (f b) (f a)
21522152

0 commit comments

Comments
 (0)