colonnade-0.4.6: Generic types and functions for columnar encoding and decoding

Safe HaskellNone
LanguageHaskell2010

Colonnade.Encoding

Synopsis

Documentation

mapContent :: Functor f => (c1 -> c2) -> Encoding f c1 a -> Encoding f c2 a Source #

headless :: (a -> content) -> Encoding Headless content a Source #

headed :: content -> (a -> content) -> Encoding Headed content a Source #

runRow :: (c1 -> c2) -> Encoding f c1 a -> a -> Vector c2 Source #

Consider providing a variant the produces a list instead. It may allow more things to get inlined in to a loop.

runBothMonadic_ :: Monad m => Encoding Headed content a -> (content -> content -> m b) -> a -> m () Source #

runRowMonadic :: (Monad m, Monoid b) => Encoding f content a -> (content -> m b) -> a -> m b Source #

runRowMonadic_ :: Monad m => Encoding f content a -> (content -> m b) -> a -> m () Source #

runRowMonadicWith :: Monad m => b -> (b -> b -> b) -> Encoding f content a -> (content -> m b) -> a -> m b Source #

runHeader :: (c1 -> c2) -> Encoding Headed c1 a -> Vector c2 Source #

runHeaderMonadicGeneral :: (Monad m, Monoid b, Foldable h) => Encoding h content a -> (content -> m b) -> m b Source #

This function is a helper for abusing Foldable to optionally render a header. Its future is uncertain.

runHeaderMonadic :: (Monad m, Monoid b) => Encoding Headed content a -> (content -> m b) -> m b Source #

runHeaderMonadicGeneral_ :: (Monad m, Monoid b, Foldable h) => Encoding h content a -> (content -> m b) -> m () Source #

runHeaderMonadic_ :: Monad m => Encoding Headed content a -> (content -> m b) -> m () Source #

fromMaybe :: c -> Encoding f c a -> Encoding f c (Maybe a) Source #

columns :: (b -> a -> c) -> (b -> f c) -> Vector b -> Encoding f c a Source #