pipes-key-value-csv-0.4.0.2: Streaming processing of CSV files preceded by key-value pairs.

Copyright(c) Marcin Mrotek 2015
LicenseBSD3
Maintainermarcin.jan.mrotek@gmail.com
Stabilityexperimental
Safe HaskellNone
LanguageHaskell2010

Pipes.KeyValueCsv.IO

Contents

Description

File input and output.

Synopsis

Documentation

streamIn Source #

Arguments

:: forall (m :: * -> *) (f :: k -> *) (g :: j -> *) (hs :: [k]) (rs :: [j]). (MonadIO m, MonadMask m, Record hs) 
=> Codec

File encoding.

-> FilePath

Input file.

-> Options (SafeT m) f g hs rs

Parsing options.

-> SafeT m (Rec (WithKeyValueError :. f) hs, Producer (Rec (WithCsvError :. g) rs) (SafeT m) (Producer ByteString (SafeT m) ())) 

Read a CSV file.

streamInBS :: (MonadIO m, MonadMask m) => FilePath -> Producer ByteString (SafeT m) () Source #

Read a ByteString stream from file.

Re-exports

data SafeT m r :: (* -> *) -> * -> * #

SafeT is a monad transformer that extends the base monad with the ability to register and release finalizers.

All unreleased finalizers are called at the end of the SafeT block, even in the event of exceptions.

Instances

MonadTrans SafeT 

Methods

lift :: Monad m => m a -> SafeT m a #

MonadState s m => MonadState s (SafeT m) 

Methods

get :: SafeT m s #

put :: s -> SafeT m () #

state :: (s -> (a, s)) -> SafeT m a #

MonadError e m => MonadError e (SafeT m) 

Methods

throwError :: e -> SafeT m a #

catchError :: SafeT m a -> (e -> SafeT m a) -> SafeT m a #

MonadWriter w m => MonadWriter w (SafeT m) 

Methods

writer :: (a, w) -> SafeT m a #

tell :: w -> SafeT m () #

listen :: SafeT m a -> SafeT m (a, w) #

pass :: SafeT m (a, w -> w) -> SafeT m a #

MonadBase b m => MonadBase b (SafeT m) 

Methods

liftBase :: b α -> SafeT m α #

MonadBaseControl b m => MonadBaseControl b (SafeT m) 

Associated Types

type StM (SafeT m :: * -> *) a :: * #

Methods

liftBaseWith :: (RunInBase (SafeT m) b -> b a) -> SafeT m a #

restoreM :: StM (SafeT m) a -> SafeT m a #

Monad m => Monad (SafeT m) 

Methods

(>>=) :: SafeT m a -> (a -> SafeT m b) -> SafeT m b #

(>>) :: SafeT m a -> SafeT m b -> SafeT m b #

return :: a -> SafeT m a #

fail :: String -> SafeT m a #

Functor m => Functor (SafeT m) 

Methods

fmap :: (a -> b) -> SafeT m a -> SafeT m b #

(<$) :: a -> SafeT m b -> SafeT m a #

Applicative m => Applicative (SafeT m) 

Methods

pure :: a -> SafeT m a #

(<*>) :: SafeT m (a -> b) -> SafeT m a -> SafeT m b #

(*>) :: SafeT m a -> SafeT m b -> SafeT m b #

(<*) :: SafeT m a -> SafeT m b -> SafeT m a #

MonadIO m => MonadIO (SafeT m) 

Methods

liftIO :: IO a -> SafeT m a #

Alternative m => Alternative (SafeT m) 

Methods

empty :: SafeT m a #

(<|>) :: SafeT m a -> SafeT m a -> SafeT m a #

some :: SafeT m a -> SafeT m [a] #

many :: SafeT m a -> SafeT m [a] #

MonadPlus m => MonadPlus (SafeT m) 

Methods

mzero :: SafeT m a #

mplus :: SafeT m a -> SafeT m a -> SafeT m a #

MonadThrow m => MonadThrow (SafeT m) 

Methods

throwM :: Exception e => e -> SafeT m a #

MonadCatch m => MonadCatch (SafeT m) 

Methods

catch :: Exception e => SafeT m a -> (e -> SafeT m a) -> SafeT m a #

MonadMask m => MonadMask (SafeT m) 

Methods

mask :: ((forall a. SafeT m a -> SafeT m a) -> SafeT m b) -> SafeT m b #

uninterruptibleMask :: ((forall a. SafeT m a -> SafeT m a) -> SafeT m b) -> SafeT m b #

MonadCont m => MonadCont (SafeT m) 

Methods

callCC :: ((a -> SafeT m b) -> SafeT m a) -> SafeT m a #

(MonadIO m, MonadCatch m, MonadMask m) => MonadSafe (SafeT m) 

Associated Types

type Base (SafeT m :: * -> *) :: * -> * #

Methods

liftBase :: Base (SafeT m) r -> SafeT m r #

register :: Base (SafeT m) () -> SafeT m ReleaseKey #

release :: ReleaseKey -> SafeT m () #

type Base (SafeT m) 
type Base (SafeT m) = m
type StM (SafeT m) a 
type StM (SafeT m) a = StM m a