these-0.7.2: An either-or-both data type & a generalized 'zip with padding' typeclass

Safe HaskellNone
LanguageHaskell98

Data.Align.Key

Description

These-based zipping and unzipping of indexed functors.

Synopsis

Documentation

class (Keyed f, Align f) => AlignWithKey f where Source #

Keyed version of Align.

Methods

alignWithKey :: (Key f -> These a b -> c) -> f a -> f b -> f c Source #

Analogous to alignWith, but also provides an index.

Instances

AlignWithKey [] Source # 

Methods

alignWithKey :: (Key [] -> These a b -> c) -> [a] -> [b] -> [c] Source #

AlignWithKey Maybe Source # 

Methods

alignWithKey :: (Key Maybe -> These a b -> c) -> Maybe a -> Maybe b -> Maybe c Source #

AlignWithKey IntMap Source # 

Methods

alignWithKey :: (Key IntMap -> These a b -> c) -> IntMap a -> IntMap b -> IntMap c Source #

AlignWithKey Seq Source # 

Methods

alignWithKey :: (Key Seq -> These a b -> c) -> Seq a -> Seq b -> Seq c Source #

AlignWithKey Vector Source # 

Methods

alignWithKey :: (Key Vector -> These a b -> c) -> Vector a -> Vector b -> Vector c Source #

(Eq k, Hashable k) => AlignWithKey (HashMap k) Source # 

Methods

alignWithKey :: (Key (HashMap k) -> These a b -> c) -> HashMap k a -> HashMap k b -> HashMap k c Source #

Ord k => AlignWithKey (Map k) Source # 

Methods

alignWithKey :: (Key (Map k) -> These a b -> c) -> Map k a -> Map k b -> Map k c Source #