| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Hedgehog.Internal.Barbie
Description
For compatibility across different versions of the barbie package.
Synopsis
Documentation
class FunctorB (b :: (k -> Type) -> Type) where #
Barbie-types that can be mapped over. Instances of FunctorB should
satisfy the following laws:
bmapid=idbmapf .bmapg =bmap(f . g)
There is a default bmap implementation for Generic types, so
instances can derived automatically.
Minimal complete definition
Nothing
Instances
| FunctorB (Proxy :: (k -> Type) -> Type) | |
Defined in Barbies.Internal.FunctorB | |
| FunctorB (Constant x :: (k -> Type) -> Type) | |
Defined in Barbies.Internal.FunctorB | |
| FunctorB (Const x :: (k -> Type) -> Type) | |
Defined in Barbies.Internal.FunctorB | |
| (FunctorB a, FunctorB b) => FunctorB (Sum a b :: (k -> Type) -> Type) | |
Defined in Barbies.Internal.FunctorB | |
| (FunctorB a, FunctorB b) => FunctorB (Product a b :: (k -> Type) -> Type) | |
Defined in Barbies.Internal.FunctorB | |
| (Functor f, FunctorB b) => FunctorB (Compose f b :: (k -> Type) -> Type) | |
Defined in Barbies.Internal.FunctorB | |
| FunctorB (Var a :: (Type -> Type) -> Type) Source # | |
Defined in Hedgehog.Internal.State | |
class FunctorB b => TraversableB (b :: (k -> Type) -> Type) where #
Barbie-types that can be traversed from left to right. Instances should satisfy the following laws:
t .btraversef =btraverse(t . f) -- naturalitybtraverseIdentity=Identity-- identitybtraverse(Compose.fmapg . f) =Compose.fmap(btraverseg) .btraversef -- composition
There is a default btraverse implementation for Generic types, so
instances can derived automatically.
Minimal complete definition
Nothing
Methods
btraverse :: Applicative e => (forall (a :: k). f a -> e (g a)) -> b f -> e (b g) #
Instances
| TraversableB (Proxy :: (k -> Type) -> Type) | |
Defined in Barbies.Internal.TraversableB Methods btraverse :: Applicative e => (forall (a :: k0). f a -> e (g a)) -> Proxy f -> e (Proxy g) # | |
| TraversableB (Constant a :: (k -> Type) -> Type) | |
Defined in Barbies.Internal.TraversableB Methods btraverse :: Applicative e => (forall (a0 :: k0). f a0 -> e (g a0)) -> Constant a f -> e (Constant a g) # | |
| TraversableB (Const a :: (k -> Type) -> Type) | |
Defined in Barbies.Internal.TraversableB Methods btraverse :: Applicative e => (forall (a0 :: k0). f a0 -> e (g a0)) -> Const a f -> e (Const a g) # | |
| (TraversableB a, TraversableB b) => TraversableB (Sum a b :: (k -> Type) -> Type) | |
Defined in Barbies.Internal.TraversableB Methods btraverse :: Applicative e => (forall (a0 :: k0). f a0 -> e (g a0)) -> Sum a b f -> e (Sum a b g) # | |
| (TraversableB a, TraversableB b) => TraversableB (Product a b :: (k -> Type) -> Type) | |
Defined in Barbies.Internal.TraversableB Methods btraverse :: Applicative e => (forall (a0 :: k0). f a0 -> e (g a0)) -> Product a b f -> e (Product a b g) # | |
| (Traversable f, TraversableB b) => TraversableB (Compose f b :: (k -> Type) -> Type) | |
Defined in Barbies.Internal.TraversableB Methods btraverse :: Applicative e => (forall (a :: k0). f0 a -> e (g a)) -> Compose f b f0 -> e (Compose f b g) # | |
| TraversableB (Var a :: (Type -> Type) -> Type) Source # | |
Defined in Hedgehog.Internal.State Methods btraverse :: Applicative e => (forall (a0 :: k). f a0 -> e (g a0)) -> Var a f -> e (Var a g) # | |
Instances
| GConstraints n (c :: k1 -> Constraint) (f :: k2) (Rec a' a :: Type -> Type) (Rec b' b :: k3 -> Type) (Rec b' b :: k3 -> Type) | |
| GConstraints n (c :: k1 -> Constraint) (f :: k1 -> Type) (Rec (P n (X :: k1 -> Type) a') (X a) :: Type -> Type) (Rec (P n f a') (f a) :: k2 -> Type) (Rec (P n (Product (Dict c) f) a') (Product (Dict c) f a) :: k2 -> Type) | |
| type GAll n (c :: k -> Constraint) (Rec l r :: Type -> Type) | |
Defined in Barbies.Generics.Constraints | |