hgeometry-combinatorial
Copyright(C) Frank Staals
Licensesee the LICENSE file
MaintainerFrank Staals
Safe HaskellNone
LanguageGHC2021

HGeometry.Sequence.KV

Description

Sequences of key value pairs.

Synopsis

Documentation

newtype KV (f :: Type -> Type) k v Source #

An f of key value pairs

Constructors

KV (f (k, v)) 

Instances

Instances details
Foldable f => FoldableWithIndex k (KV f k) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

ifoldMap :: Monoid m => (k -> a -> m) -> KV f k a -> m Source #

ifoldMap' :: Monoid m => (k -> a -> m) -> KV f k a -> m Source #

ifoldr :: (k -> a -> b -> b) -> b -> KV f k a -> b Source #

ifoldl :: (k -> b -> a -> b) -> b -> KV f k a -> b Source #

ifoldr' :: (k -> a -> b -> b) -> b -> KV f k a -> b Source #

ifoldl' :: (k -> b -> a -> b) -> b -> KV f k a -> b Source #

Functor f => FunctorWithIndex k (KV f k) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

imap :: (k -> a -> b) -> KV f k a -> KV f k b Source #

Traversable f => TraversableWithIndex k (KV f k) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

itraverse :: Applicative f0 => (k -> a -> f0 b) -> KV f k a -> f0 (KV f k b) Source #

Foldable f => Bifoldable (KV f) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

bifold :: Monoid m => KV f m m -> m #

bifoldMap :: Monoid m => (a -> m) -> (b -> m) -> KV f a b -> m #

bifoldr :: (a -> c -> c) -> (b -> c -> c) -> c -> KV f a b -> c #

bifoldl :: (c -> a -> c) -> (c -> b -> c) -> c -> KV f a b -> c #

Functor f => Bifunctor (KV f) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

bimap :: (a -> b) -> (c -> d) -> KV f a c -> KV f b d #

first :: (a -> b) -> KV f a c -> KV f b c #

second :: (b -> c) -> KV f a b -> KV f a c #

Traversable f => Bitraversable (KV f) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

bitraverse :: Applicative f0 => (a -> f0 c) -> (b -> f0 d) -> KV f a b -> f0 (KV f c d) #

Eq1 f => Eq2 (KV f) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

liftEq2 :: (a -> b -> Bool) -> (c -> d -> Bool) -> KV f a c -> KV f b d -> Bool #

Ord1 f => Ord2 (KV f) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

liftCompare2 :: (a -> b -> Ordering) -> (c -> d -> Ordering) -> KV f a c -> KV f b d -> Ordering #

Show1 f => Show2 (KV f) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

liftShowsPrec2 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> Int -> KV f a b -> ShowS #

liftShowList2 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> [KV f a b] -> ShowS #

Foldable1 f => Foldable1 (KV f e) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

fold1 :: Semigroup m => KV f e m -> m #

foldMap1 :: Semigroup m => (a -> m) -> KV f e a -> m #

foldMap1' :: Semigroup m => (a -> m) -> KV f e a -> m #

toNonEmpty :: KV f e a -> NonEmpty a #

maximum :: Ord a => KV f e a -> a #

minimum :: Ord a => KV f e a -> a #

head :: KV f e a -> a #

last :: KV f e a -> a #

foldrMap1 :: (a -> b) -> (a -> b -> b) -> KV f e a -> b #

foldlMap1' :: (a -> b) -> (b -> a -> b) -> KV f e a -> b #

foldlMap1 :: (a -> b) -> (b -> a -> b) -> KV f e a -> b #

foldrMap1' :: (a -> b) -> (a -> b -> b) -> KV f e a -> b #

(Eq1 f, Eq k) => Eq1 (KV f k) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

liftEq :: (a -> b -> Bool) -> KV f k a -> KV f k b -> Bool #

(Ord1 f, Ord k) => Ord1 (KV f k) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

liftCompare :: (a -> b -> Ordering) -> KV f k a -> KV f k b -> Ordering #

(Show1 f, Show k) => Show1 (KV f k) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> KV f k a -> ShowS #

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [KV f k a] -> ShowS #

Functor f => Functor (KV f k) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

fmap :: (a -> b) -> KV f k a -> KV f k b #

(<$) :: a -> KV f k b -> KV f k a #

Foldable f => Foldable (KV f k) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

fold :: Monoid m => KV f k m -> m #

foldMap :: Monoid m => (a -> m) -> KV f k a -> m #

foldMap' :: Monoid m => (a -> m) -> KV f k a -> m #

foldr :: (a -> b -> b) -> b -> KV f k a -> b #

foldr' :: (a -> b -> b) -> b -> KV f k a -> b #

foldl :: (b -> a -> b) -> b -> KV f k a -> b #

foldl' :: (b -> a -> b) -> b -> KV f k a -> b #

foldr1 :: (a -> a -> a) -> KV f k a -> a #

foldl1 :: (a -> a -> a) -> KV f k a -> a #

toList :: KV f k a -> [a] #

null :: KV f k a -> Bool #

length :: KV f k a -> Int #

elem :: Eq a => a -> KV f k a -> Bool #

maximum :: Ord a => KV f k a -> a #

minimum :: Ord a => KV f k a -> a #

sum :: Num a => KV f k a -> a #

product :: Num a => KV f k a -> a #

Traversable f => Traversable (KV f k) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

traverse :: Applicative f0 => (a -> f0 b) -> KV f k a -> f0 (KV f k b) #

sequenceA :: Applicative f0 => KV f k (f0 a) -> f0 (KV f k a) #

mapM :: Monad m => (a -> m b) -> KV f k a -> m (KV f k b) #

sequence :: Monad m => KV f k (m a) -> m (KV f k a) #

Traversable1 f => Traversable1 (KV f e) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

traverse1 :: Apply f0 => (a -> f0 b) -> KV f e a -> f0 (KV f e b) Source #

sequence1 :: Apply f0 => KV f e (f0 b) -> f0 (KV f e b) Source #

Monoid (f (k, v)) => Monoid (KV f k v) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

mempty :: KV f k v #

mappend :: KV f k v -> KV f k v -> KV f k v #

mconcat :: [KV f k v] -> KV f k v #

Semigroup (f (k, v)) => Semigroup (KV f k v) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

(<>) :: KV f k v -> KV f k v -> KV f k v #

sconcat :: NonEmpty (KV f k v) -> KV f k v #

stimes :: Integral b => b -> KV f k v -> KV f k v #

(Show k, Show v, Show1 f) => Show (KV f k v) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

showsPrec :: Int -> KV f k v -> ShowS #

show :: KV f k v -> String #

showList :: [KV f k v] -> ShowS #

(Eq k, Eq v, Eq1 f) => Eq (KV f k v) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

(==) :: KV f k v -> KV f k v -> Bool #

(/=) :: KV f k v -> KV f k v -> Bool #

(Ord k, Ord v, Ord1 f) => Ord (KV f k v) Source # 
Instance details

Defined in HGeometry.Sequence.KV

Methods

compare :: KV f k v -> KV f k v -> Ordering #

(<) :: KV f k v -> KV f k v -> Bool #

(<=) :: KV f k v -> KV f k v -> Bool #

(>) :: KV f k v -> KV f k v -> Bool #

(>=) :: KV f k v -> KV f k v -> Bool #

max :: KV f k v -> KV f k v -> KV f k v #

min :: KV f k v -> KV f k v -> KV f k v #

assocs :: Foldable f => KV f k v -> f (k, v) Source #

Get the data as an f of (k,v) pairs.

empty :: forall (f :: Type -> Type) k v. Monoid (f (k, v)) => KV f k v Source #

Produce an empty structure