fakefs-0.1.0.0: Extensible fake file system for testing.

Safe HaskellNone
LanguageHaskell2010

Test.FileSystem.Fake

Documentation

type FileSystem meta contents = Map String (meta contents) Source #

data MetaHandlers meta contents m Source #

Constructors

MetaHandlers 

Fields

newtype FileSystemT meta contents m a Source #

Constructors

FileSystemT (ReaderT (MetaHandlers meta contents m) (ExceptT IOException (StateT (FileSystem meta contents) m)) a) 
Instances
MonadTrans (FileSystemT meta contents) Source # 
Instance details

Defined in Test.FileSystem.Fake

Methods

lift :: Monad m => m a -> FileSystemT meta contents m a #

Monad m => Monad (FileSystemT meta contents m) Source # 
Instance details

Defined in Test.FileSystem.Fake

Methods

(>>=) :: FileSystemT meta contents m a -> (a -> FileSystemT meta contents m b) -> FileSystemT meta contents m b #

(>>) :: FileSystemT meta contents m a -> FileSystemT meta contents m b -> FileSystemT meta contents m b #

return :: a -> FileSystemT meta contents m a #

fail :: String -> FileSystemT meta contents m a #

Functor m => Functor (FileSystemT meta contents m) Source # 
Instance details

Defined in Test.FileSystem.Fake

Methods

fmap :: (a -> b) -> FileSystemT meta contents m a -> FileSystemT meta contents m b #

(<$) :: a -> FileSystemT meta contents m b -> FileSystemT meta contents m a #

Monad m => Applicative (FileSystemT meta contents m) Source # 
Instance details

Defined in Test.FileSystem.Fake

Methods

pure :: a -> FileSystemT meta contents m a #

(<*>) :: FileSystemT meta contents m (a -> b) -> FileSystemT meta contents m a -> FileSystemT meta contents m b #

liftA2 :: (a -> b -> c) -> FileSystemT meta contents m a -> FileSystemT meta contents m b -> FileSystemT meta contents m c #

(*>) :: FileSystemT meta contents m a -> FileSystemT meta contents m b -> FileSystemT meta contents m b #

(<*) :: FileSystemT meta contents m a -> FileSystemT meta contents m b -> FileSystemT meta contents m a #

type FileSystemM meta contents = FileSystemT meta contents Identity Source #

runFileSystemT :: Functor m => MetaHandlers meta contents m -> FileSystem meta contents -> FileSystemT meta contents m a -> m (FileSystem meta contents, Either IOException a) Source #

runFileSystemM :: MetaHandlers meta contents Identity -> FileSystem meta contents -> FileSystemM meta contents a -> (FileSystem meta contents, Either IOException a) Source #

readFileT :: Monad m => FilePath -> FileSystemT meta contents m contents Source #

writeFileT :: Monad m => FilePath -> contents -> FileSystemT meta contents m () Source #