conduit-vfs-zip-0.1.0.0: Zip archive interface for the Conduit Virtual File System.

Safe HaskellNone
LanguageHaskell2010

Data.Conduit.VFS.Zip.Types

Synopsis

Documentation

newtype ZipVFS m a Source #

Represents a single zip file as a conduit. Note that the zip file is resident in-memory as an Archive. The Archive type holds a list of Entry, each of which holds their content as a lazy ByteString. Because of this, you can use ZipVFS as an alternative to PureVFS, which stores its in-memory data as compressed bytes. It can also be used as an alternative to InMemoryVFS as long as the conduit execution is single-threaded.

Constructors

ZipVFS 

Fields

Instances
MonadTrans ZipVFS Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

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

MonadMask m => MonadReader Archive (ZipVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

ask :: ZipVFS m Archive #

local :: (Archive -> Archive) -> ZipVFS m a -> ZipVFS m a #

reader :: (Archive -> a) -> ZipVFS m a #

Monad m => MonadState Archive (ZipVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

get :: ZipVFS m Archive #

put :: Archive -> ZipVFS m () #

state :: (Archive -> (a, Archive)) -> ZipVFS m a #

Monad m => Monad (ZipVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

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

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

return :: a -> ZipVFS m a #

fail :: String -> ZipVFS m a #

Functor m => Functor (ZipVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

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

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

MonadFail m => MonadFail (ZipVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

fail :: String -> ZipVFS m a #

Monad m => Applicative (ZipVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

pure :: a -> ZipVFS m a #

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

liftA2 :: (a -> b -> c) -> ZipVFS m a -> ZipVFS m b -> ZipVFS m c #

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

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

MonadIO m => MonadIO (ZipVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

liftIO :: IO a -> ZipVFS m a #

MonadResource m => MonadResource (ZipVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

liftResourceT :: ResourceT IO a -> ZipVFS m a #

MonadThrow m => MonadThrow (ZipVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

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

Monad m => ReadVFSC (ZipVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Monad m => WriteVFSC (ZipVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Monad m => VFSC (ZipVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

MonadCatch m => MonadCatch (ZipVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

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

MonadMask m => MonadMask (ZipVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

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

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

generalBracket :: ZipVFS m a -> (a -> ExitCase b -> ZipVFS m c) -> (a -> ZipVFS m b) -> ZipVFS m (b, c) #

newtype DiskZipsVFS m a Source #

This type is similar to DiskVFS, but it automatically expands the contents of zip files that it encounters. Zip files are files denoted by the file suffix ".zip". The filepaths for internal entries are separated by the searchPathSeparator character.

Constructors

DiskZipsVFS 

Fields

Instances
MonadTrans (DiskZipsVFS :: (Type -> Type) -> Type -> Type) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

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

Monad m => Monad (DiskZipsVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

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

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

return :: a -> DiskZipsVFS m a #

fail :: String -> DiskZipsVFS m a #

Functor m => Functor (DiskZipsVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

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

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

MonadFail m => MonadFail (DiskZipsVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

fail :: String -> DiskZipsVFS m a #

Applicative m => Applicative (DiskZipsVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

pure :: a -> DiskZipsVFS m a #

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

liftA2 :: (a -> b -> c) -> DiskZipsVFS m a -> DiskZipsVFS m b -> DiskZipsVFS m c #

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

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

MonadIO m => MonadIO (DiskZipsVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

liftIO :: IO a -> DiskZipsVFS m a #

MonadResource m => MonadResource (DiskZipsVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

MonadThrow m => MonadThrow (DiskZipsVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

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

MonadUnliftIO m => ReadVFSC (DiskZipsVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

MonadUnliftIO m => WriteVFSC (DiskZipsVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

MonadUnliftIO m => VFSC (DiskZipsVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

MonadCatch m => MonadCatch (DiskZipsVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

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

MonadMask m => MonadMask (DiskZipsVFS m) Source # 
Instance details

Defined in Data.Conduit.VFS.Zip.Types

Methods

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

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

generalBracket :: DiskZipsVFS m a -> (a -> ExitCase b -> DiskZipsVFS m c) -> (a -> DiskZipsVFS m b) -> DiskZipsVFS m (b, c) #