Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Documentation
traverseDefaultPos :: forall v f as bs g. (GenericK f, GenericK f, GTraversable (RepK f) v as bs, Applicative g) => (Interpret ('Var v) as -> g (Interpret ('Var v) bs)) -> (f :@@: as) -> g (f :@@: bs) Source #
traverseDefault :: forall f a b g. (GenericK f, GenericK f, GTraversable (RepK f) 'VZ (LoT1 a) (LoT1 b), Applicative g) => (a -> g b) -> f a -> g (f b) Source #
class GTraversable (f :: LoT k -> Type) (v :: TyVar k Type) (as :: LoT k) (bs :: LoT k) where Source #
gtraverse :: Applicative g => (Interpret ('Var v) as -> g (Interpret ('Var v) bs)) -> f as -> g (f bs) Source #
Instances
GTraversable (U1 :: LoT k -> Type) (v :: TyVar k Type) (as :: LoT k) (bs :: LoT k) Source # | |
GTraversableArg t v as bs (ContainsTyVar v t) => GTraversable (Field t :: LoT k -> Type) (v :: TyVar k Type) (as :: LoT k) (bs :: LoT k) Source # | |
(GTraversable f v as bs, GTraversable g v as bs) => GTraversable (f :*: g :: LoT k -> Type) (v :: TyVar k Type) (as :: LoT k) (bs :: LoT k) Source # | |
(GTraversable f v as bs, GTraversable g v as bs) => GTraversable (f :+: g :: LoT k -> Type) (v :: TyVar k Type) (as :: LoT k) (bs :: LoT k) Source # | |
(Interpret c as => GTraversable f v as bs, z ~ Interpret c bs, Interpret c as => z) => GTraversable (c :=>: f :: LoT k -> Type) (v :: TyVar k Type) (as :: LoT k) (bs :: LoT k) Source # | |
(forall (t :: k2). GTraversable f ('VS v :: TyVar (k2 -> k1) Type) (t :&&: as) (t :&&: bs)) => GTraversable (Exists k2 f :: LoT k1 -> Type) (v :: TyVar k1 Type) (as :: LoT k1) (bs :: LoT k1) Source # | |
GTraversable f v as bs => GTraversable (M1 i c f :: LoT k -> Type) (v :: TyVar k Type) (as :: LoT k) (bs :: LoT k) Source # | |
class GTraversableArg (t :: Atom d Type) (v :: TyVar d Type) (as :: LoT d) (bs :: LoT d) (p :: Bool) where Source #
gtraversef :: Applicative g => (Interpret ('Var v) as -> g (Interpret ('Var v) bs)) -> Interpret t as -> g (Interpret t bs) Source #
Instances
Interpret t as ~ Interpret t bs => GTraversableArg (t :: Atom d Type) (v :: TyVar d Type) (as :: LoT d) (bs :: LoT d) 'False Source # | |
Defined in Generics.Kind.Derive.Traversable gtraversef :: Applicative g => (Interpret ('Var v) as -> g (Interpret ('Var v) bs)) -> Interpret t as -> g (Interpret t bs) Source # | |
(TypeError ('Text "Should never get here") :: Constraint) => GTraversableArg ('Kon t :: Atom d Type) (v :: TyVar d Type) (as :: LoT d) (bs :: LoT d) whatever Source # | |
Defined in Generics.Kind.Derive.Traversable | |
(Traversable (Interpret f as), Interpret f as ~ Interpret f bs, GTraversableArg x v as bs (ContainsTyVar v x)) => GTraversableArg (f :@: x :: Atom d Type) (v :: TyVar d Type) (as :: LoT d) (bs :: LoT d) 'True Source # | |
Defined in Generics.Kind.Derive.Traversable | |
GTraversableArg ('Var ('VZ :: TyVar (Type -> xs) Type) :: Atom (Type -> xs) Type) ('VZ :: TyVar (Type -> xs) Type) (a :&&: as :: LoT (Type -> xs)) (b :&&: bs :: LoT (Type -> xs)) 'True Source # | |
(TypeError ('Text "Should never get here") :: Constraint) => GTraversableArg ('Var ('VZ :: TyVar (Type -> xs) Type) :: Atom (Type -> xs) Type) ('VS n :: TyVar (Type -> xs) Type) (r :&&: as :: LoT (Type -> xs)) (r :&&: bs :: LoT (Type -> xs)) 'True Source # | |
GTraversableArg ('Var v) n as bs isthere => GTraversableArg ('Var ('VS v :: TyVar (x -> d) Type) :: Atom (x -> d) Type) ('VS n :: TyVar (x -> d) Type) (r :&&: as :: LoT (x -> d)) (s :&&: bs :: LoT (x -> d)) isthere Source # | |