g2-0.2.0.0: src/G2/Data/Utils.hs
module G2.Data.Utils ( uncurry3
, uncurry4
, fst4
, snd4
, thd4
, fth4) where
uncurry3 :: (a -> b -> c -> d) -> (a, b, c) -> d
uncurry3 f (a, b, c) = f a b c
uncurry4 :: (a -> b -> c -> d -> e) -> ((a, b, c, d) -> e)
uncurry4 f (a,b,c,d) = f a b c d
fst4 :: (a, b, c, d) -> a
fst4 (a, _, _, _) = a
snd4 :: (a, b, c, d) -> b
snd4 (_, b, _, _) = b
thd4 :: (a, b, c, d) -> c
thd4 (_, _, c, _) = c
fth4 :: (a, b, c, d) -> d
fth4 (_, _, _, d) = d