kind-generics-deriving-0.3.0.0: Generic programming in GHC style for arbitrary kinds and GADTs.
Safe HaskellSafe-Inferred
LanguageHaskell2010

Generics.Kind.Derive.Examples

Documentation

fmapEither :: (a -> b) -> Either e a -> Either e b Source #

Orphan instances

Foldable Tree Source # 
Instance details

Methods

fold :: Monoid m => Tree m -> m #

foldMap :: Monoid m => (a -> m) -> Tree a -> m #

foldMap' :: Monoid m => (a -> m) -> Tree a -> m #

foldr :: (a -> b -> b) -> b -> Tree a -> b #

foldr' :: (a -> b -> b) -> b -> Tree a -> b #

foldl :: (b -> a -> b) -> b -> Tree a -> b #

foldl' :: (b -> a -> b) -> b -> Tree a -> b #

foldr1 :: (a -> a -> a) -> Tree a -> a #

foldl1 :: (a -> a -> a) -> Tree a -> a #

toList :: Tree a -> [a] #

null :: Tree a -> Bool #

length :: Tree a -> Int #

elem :: Eq a => a -> Tree a -> Bool #

maximum :: Ord a => Tree a -> a #

minimum :: Ord a => Tree a -> a #

sum :: Num a => Tree a -> a #

product :: Num a => Tree a -> a #

Traversable Tree Source # 
Instance details

Methods

traverse :: Applicative f => (a -> f b) -> Tree a -> f (Tree b) #

sequenceA :: Applicative f => Tree (f a) -> f (Tree a) #

mapM :: Monad m => (a -> m b) -> Tree a -> m (Tree b) #

sequence :: Monad m => Tree (m a) -> m (Tree a) #

Functor Tree Source # 
Instance details

Methods

fmap :: (a -> b) -> Tree a -> Tree b #

(<$) :: a -> Tree b -> Tree a #

FromJSON a => FromJSON (Tree a) Source # 
Instance details

ToJSON a => ToJSON (Tree a) Source # 
Instance details

Foldable (SimpleIndex a) Source # 
Instance details

Methods

fold :: Monoid m => SimpleIndex a m -> m #

foldMap :: Monoid m => (a0 -> m) -> SimpleIndex a a0 -> m #

foldMap' :: Monoid m => (a0 -> m) -> SimpleIndex a a0 -> m #

foldr :: (a0 -> b -> b) -> b -> SimpleIndex a a0 -> b #

foldr' :: (a0 -> b -> b) -> b -> SimpleIndex a a0 -> b #

foldl :: (b -> a0 -> b) -> b -> SimpleIndex a a0 -> b #

foldl' :: (b -> a0 -> b) -> b -> SimpleIndex a a0 -> b #

foldr1 :: (a0 -> a0 -> a0) -> SimpleIndex a a0 -> a0 #

foldl1 :: (a0 -> a0 -> a0) -> SimpleIndex a a0 -> a0 #

toList :: SimpleIndex a a0 -> [a0] #

null :: SimpleIndex a a0 -> Bool #

length :: SimpleIndex a a0 -> Int #

elem :: Eq a0 => a0 -> SimpleIndex a a0 -> Bool #

maximum :: Ord a0 => SimpleIndex a a0 -> a0 #

minimum :: Ord a0 => SimpleIndex a a0 -> a0 #

sum :: Num a0 => SimpleIndex a a0 -> a0 #

product :: Num a0 => SimpleIndex a a0 -> a0 #

Traversable (SimpleIndex a) Source # 
Instance details

Methods

traverse :: Applicative f => (a0 -> f b) -> SimpleIndex a a0 -> f (SimpleIndex a b) #

sequenceA :: Applicative f => SimpleIndex a (f a0) -> f (SimpleIndex a a0) #

mapM :: Monad m => (a0 -> m b) -> SimpleIndex a a0 -> m (SimpleIndex a b) #

sequence :: Monad m => SimpleIndex a (m a0) -> m (SimpleIndex a a0) #

Functor (SimpleIndex a) Source # 
Instance details

Methods

fmap :: (a0 -> b) -> SimpleIndex a a0 -> SimpleIndex a b #

(<$) :: a0 -> SimpleIndex a b -> SimpleIndex a a0 #

Eq a => Eq (Tree a) Source # 
Instance details

Methods

(==) :: Tree a -> Tree a -> Bool #

(/=) :: Tree a -> Tree a -> Bool #

EFunctor f => Functor (Hkd f) Source # 
Instance details

Methods

fmap :: (a -> b) -> Hkd f a -> Hkd f b #

(<$) :: a -> Hkd f b -> Hkd f a #

Show b => KFunctor WeirdTree '['Co] (a :&&: 'LoT0 :: LoT (TYPE LiftedRep -> TYPE LiftedRep)) (b :&&: 'LoT0 :: LoT (TYPE LiftedRep -> TYPE LiftedRep)) Source # 
Instance details

Methods

kfmap :: Mappings '['Co] (a :&&: 'LoT0) (b :&&: 'LoT0) -> (WeirdTree :@@: (a :&&: 'LoT0)) -> WeirdTree :@@: (b :&&: 'LoT0) #

KFunctor Tree '['Co] (a :&&: 'LoT0 :: LoT (Type -> TYPE LiftedRep)) (b :&&: 'LoT0 :: LoT (Type -> TYPE LiftedRep)) Source # 
Instance details

Methods

kfmap :: Mappings '['Co] (a :&&: 'LoT0) (b :&&: 'LoT0) -> (Tree :@@: (a :&&: 'LoT0)) -> Tree :@@: (b :&&: 'LoT0) #

KFunctor Maybe '['Co] (a :&&: 'LoT0 :: LoT (Type -> TYPE LiftedRep)) (b :&&: 'LoT0 :: LoT (Type -> TYPE LiftedRep)) Source # 
Instance details

Methods

kfmap :: Mappings '['Co] (a :&&: 'LoT0) (b :&&: 'LoT0) -> (Maybe :@@: (a :&&: 'LoT0)) -> Maybe :@@: (b :&&: 'LoT0) #

ToJSON (TTY m a) Source # 
Instance details

Methods

toJSON :: TTY m a -> Value #

toEncoding :: TTY m a -> Encoding #

toJSONList :: [TTY m a] -> Value #

toEncodingList :: [TTY m a] -> Encoding #

Eq (TTY m a) Source # 
Instance details

Methods

(==) :: TTY m a -> TTY m a -> Bool #

(/=) :: TTY m a -> TTY m a -> Bool #