colonnade-0.4: 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.

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

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

runHeaderMonadic :: (Monad m, Monoid b) => Encoding Headed content a -> (content -> m b) -> m b 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 #