winery-0.1: Sustainable serialisation library

Safe HaskellNone
LanguageHaskell2010

Data.Winery.Internal

Documentation

unsafeIndex :: String -> [a] -> Int -> a Source #

unsafeIndexV :: Unbox a => String -> Vector a -> Int -> a Source #

newtype Strategy a Source #

Constructors

Strategy 

Instances

Monad Strategy Source # 

Methods

(>>=) :: Strategy a -> (a -> Strategy b) -> Strategy b #

(>>) :: Strategy a -> Strategy b -> Strategy b #

return :: a -> Strategy a #

fail :: String -> Strategy a #

Functor Strategy Source # 

Methods

fmap :: (a -> b) -> Strategy a -> Strategy b #

(<$) :: a -> Strategy b -> Strategy a #

MonadFix Strategy Source # 

Methods

mfix :: (a -> Strategy a) -> Strategy a #

Applicative Strategy Source # 

Methods

pure :: a -> Strategy a #

(<*>) :: Strategy (a -> b) -> Strategy a -> Strategy b #

liftA2 :: (a -> b -> c) -> Strategy a -> Strategy b -> Strategy c #

(*>) :: Strategy a -> Strategy b -> Strategy b #

(<*) :: Strategy a -> Strategy b -> Strategy a #

Alternative Strategy Source # 

Methods

empty :: Strategy a #

(<|>) :: Strategy a -> Strategy a -> Strategy a #

some :: Strategy a -> Strategy [a] #

many :: Strategy a -> Strategy [a] #

data TransList f g a Source #

Constructors

Done a 
More (f x) (TransList f g (g x -> a)) 

Instances

Functor (TransList f g) Source # 

Methods

fmap :: (a -> b) -> TransList f g a -> TransList f g b #

(<$) :: a -> TransList f g b -> TransList f g a #

Applicative (TransList f g) Source # 

Methods

pure :: a -> TransList f g a #

(<*>) :: TransList f g (a -> b) -> TransList f g a -> TransList f g b #

liftA2 :: (a -> b -> c) -> TransList f g a -> TransList f g b -> TransList f g c #

(*>) :: TransList f g a -> TransList f g b -> TransList f g b #

(<*) :: TransList f g a -> TransList f g b -> TransList f g a #

newtype TransFusion f g a Source #

Constructors

TransFusion 

Fields

Instances

Functor (TransFusion f g) Source # 

Methods

fmap :: (a -> b) -> TransFusion f g a -> TransFusion f g b #

(<$) :: a -> TransFusion f g b -> TransFusion f g a #

Applicative (TransFusion f g) Source # 

Methods

pure :: a -> TransFusion f g a #

(<*>) :: TransFusion f g (a -> b) -> TransFusion f g a -> TransFusion f g b #

liftA2 :: (a -> b -> c) -> TransFusion f g a -> TransFusion f g b -> TransFusion f g c #

(*>) :: TransFusion f g a -> TransFusion f g b -> TransFusion f g b #

(<*) :: TransFusion f g a -> TransFusion f g b -> TransFusion f g a #