freer-par-monad-0.1.0.0: Freer par monad
Safe HaskellSafe-Inferred
LanguageHaskell2010

Control.Monad.Freer.Par.Sequence

Synopsis

Sequence and ViewL

class Sequence sq where Source #

Methods

empty :: sq cat a a Source #

singleton :: cat a b -> sq cat a b Source #

(><) :: sq cat a b -> sq cat b c -> sq cat a c infixr 8 Source #

viewl :: sq cat a b -> ViewL sq cat a b Source #

Instances

Instances details
Sequence FTCQueue Source # 
Instance details

Defined in Control.Monad.Freer.Par.FTCQueue

Methods

empty :: forall (cat :: Type -> Type -> TYPE LiftedRep) a. FTCQueue cat a a Source #

singleton :: cat a b -> FTCQueue cat a b Source #

(><) :: forall (cat :: Type -> Type -> TYPE LiftedRep) a b c. FTCQueue cat a b -> FTCQueue cat b c -> FTCQueue cat a c Source #

viewl :: forall (cat :: Type -> Type -> TYPE LiftedRep) a b. FTCQueue cat a b -> ViewL FTCQueue cat a b Source #

data ViewL sq cat a b where Source #

Constructors

EmptyL :: ViewL sq cat a a 
(:<|) :: cat a x -> sq cat x b -> ViewL sq cat a b 

Combinator

(<|) :: Sequence sq => cat a b -> sq cat b c -> sq cat a c infixr 8 Source #

(|>) :: Sequence sq => sq cat a b -> cat b c -> sq cat a c infixl 8 Source #

mapS :: (Applicative f, Sequence sq) => (forall x y. cat x y -> f (cat x y)) -> sq cat a b -> f (sq cat a b) Source #