zipValueMaps = zipValueMapsWith (\a b -> (a, b))
-- | Creates a map of two maps using the given combination function.
zipValueMaps = zipValueMapsWith (\a b -> (a, b))
-- | Creates a map of two maps using the given combination function.
zipValueMapsWith f (Tuple as) (Tuple bs) =
Tuple $ zipWith (zipValueMapsWith f) as bs
zipValueMapsWith f (Single a) (Single b) =
Single $ f a b
zipValueMapsWith f (Tuple as) (Tuple bs) =
Tuple $ zipWith (zipValueMapsWith f) as bs
zipValueMapsWith f (Single a) (Single b) =
Single $ f a b