expressions-0.1.5: Expressions and Formulae a la carte

Copyright(C) 2017-18 Jakub Daniel
LicenseBSD-style (see the file LICENSE)
MaintainerJakub Daniel <jakub.daniel@protonmail.com>
Stabilityexperimental
Safe HaskellNone
LanguageHaskell2010

Data.Expression.Utils.Indexed.Traversable

Description

 

Synopsis

Documentation

class ITraversable (t :: (i -> *) -> i -> *) where Source #

Type constructors (usually functors) that can be traversed

Minimal complete definition

itraverse

Methods

itraverse :: forall (a :: i -> *) (b :: i -> *) f. Applicative f => (forall (i' :: i). a i' -> f (b i')) -> forall (i' :: i). t a i' -> f (t b i') Source #

Instances

ITraversable Sort IfThenElseF Source # 

Methods

itraverse :: Applicative f => (forall (i' :: IfThenElseF). a i' -> f (b i')) -> forall (i' :: IfThenElseF). t a i' -> f (t b i') Source #

ITraversable Sort ArrayF Source # 

Methods

itraverse :: Applicative f => (forall (i' :: ArrayF). a i' -> f (b i')) -> forall (i' :: ArrayF). t a i' -> f (t b i') Source #

ITraversable Sort ArithmeticF Source # 

Methods

itraverse :: Applicative f => (forall (i' :: ArithmeticF). a i' -> f (b i')) -> forall (i' :: ArithmeticF). t a i' -> f (t b i') Source #

ITraversable Sort NegationF Source # 

Methods

itraverse :: Applicative f => (forall (i' :: NegationF). a i' -> f (b i')) -> forall (i' :: NegationF). t a i' -> f (t b i') Source #

ITraversable Sort DisjunctionF Source # 

Methods

itraverse :: Applicative f => (forall (i' :: DisjunctionF). a i' -> f (b i')) -> forall (i' :: DisjunctionF). t a i' -> f (t b i') Source #

ITraversable Sort ConjunctionF Source # 

Methods

itraverse :: Applicative f => (forall (i' :: ConjunctionF). a i' -> f (b i')) -> forall (i' :: ConjunctionF). t a i' -> f (t b i') Source #

ITraversable Sort (EqualityF Sort) Source # 

Methods

itraverse :: Applicative f => (forall (i' :: EqualityF Sort). a i' -> f (b i')) -> forall (i' :: EqualityF Sort). t a i' -> f (t b i') Source #

ITraversable Sort (ExistentialF v) Source # 

Methods

itraverse :: Applicative f => (forall (i' :: ExistentialF v). a i' -> f (b i')) -> forall (i' :: ExistentialF v). t a i' -> f (t b i') Source #

ITraversable Sort (UniversalF v) Source # 

Methods

itraverse :: Applicative f => (forall (i' :: UniversalF v). a i' -> f (b i')) -> forall (i' :: UniversalF v). t a i' -> f (t b i') Source #

ITraversable Sort (VarF (Sort -> *)) Source # 

Methods

itraverse :: Applicative f => (forall (i' :: VarF (Sort -> *)). a i' -> f (b i')) -> forall (i' :: VarF (Sort -> *)). t a i' -> f (t b i') Source #

(ITraversable i f, ITraversable i g) => ITraversable i ((:+:) (i -> *) i f g) Source # 

Methods

itraverse :: Applicative f => (forall (i' :: ((i -> *) :+: i) f g). a i' -> f (b i')) -> forall (i' :: ((i -> *) :+: i) f g). t a i' -> f (t b i') Source #

imapM :: (ITraversable f, Monad m) => (forall (i' :: i). IFix f i' -> m (IFix f i')) -> forall (i' :: i). IFix f i' -> m (IFix f i') Source #

Maps a monadic action over a traversable functor.