warc-0.2.0: A parser for the Web Archive (WARC) format

Safe HaskellNone
LanguageHaskell2010

Data.Warc

Contents

Synopsis

Documentation

data Record m r Source #

A WARC record

Constructors

Record 

Instances

Monad m => Functor (Record m) Source # 

Methods

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

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

type Warc m a = FreeT (Record m) m (Producer ByteString m a) Source #

A WARC archive

Parsing

parseWarc :: (Functor m, Monad m) => Producer ByteString m a -> Warc m a Source #

Parse a WARC archive.

iterRecords :: forall m a. Monad m => (forall b. Record m b -> m b) -> Warc m a -> m (Producer ByteString m a) Source #

Iterate over the Records in a WARC archive

produceRecords Source #

Arguments

:: Monad m 
=> (forall b. RecordHeader -> Producer ByteString m b -> Producer o m b)

consume the record producing some output

-> Warc m a

a WARC archive (see parseWarc)

-> Producer o m (Producer ByteString m a)

returns any leftovers

Encoding

Headers