envparse-0.5.0: Parse environment variables
Safe HaskellSafe-Inferred
LanguageHaskell2010

Env.Internal.Free

Contents

Description

Alt F is the free Alternative functor on F

Synopsis

Documentation

data Alt f a where Source #

Constructors

Nope :: Alt f a 
Pure :: a -> Alt f a 
Ap :: Alt f (a -> b) -> Alt f a -> Alt f b 
Alt :: Alt f a -> Alt f a -> Alt f a 
Lift :: f a -> Alt f a 

Instances

Instances details
Functor f => Functor (Alt f) Source # 
Instance details

Defined in Env.Internal.Free

Methods

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

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

Functor f => Applicative (Alt f) Source # 
Instance details

Defined in Env.Internal.Free

Methods

pure :: a -> Alt f a #

(<*>) :: Alt f (a -> b) -> Alt f a -> Alt f b #

liftA2 :: (a -> b -> c) -> Alt f a -> Alt f b -> Alt f c #

(*>) :: Alt f a -> Alt f b -> Alt f b #

(<*) :: Alt f a -> Alt f b -> Alt f a #

Functor f => Alternative (Alt f) Source # 
Instance details

Defined in Env.Internal.Free

Methods

empty :: Alt f a #

(<|>) :: Alt f a -> Alt f a -> Alt f a #

some :: Alt f a -> Alt f [a] #

many :: Alt f a -> Alt f [a] #

liftAlt :: f a -> Alt f a Source #

runAlt :: forall f g a. Alternative g => (forall x. f x -> g x) -> Alt f a -> g a Source #

foldAlt :: Monoid p => (forall a. f a -> p) -> Alt f b -> p Source #

hoistAlt :: forall f g b. Functor g => (forall a. f a -> g a) -> Alt f b -> Alt g b Source #

Debug

inspect :: Alt f a -> String Source #

Print the free structure