polysemy-fs-0.1.0.0: Low level filesystem operations for polysemy.
Safe HaskellNone
LanguageHaskell2010

Polysemy.FS

Documentation

data FSExist m a where Source #

Constructors

DoesFileExist :: Path b File -> FSExist m Bool 
DoesDirExist :: Path b Dir -> FSExist m Bool 

data FSRead m a where Source #

Constructors

ReadFileBS :: Path b File -> FSRead m ByteString 
ReadFileUtf8 :: Path b File -> FSRead m Text 

data FSWrite m a where Source #

Constructors

WriteFileBS :: Path b File -> ByteString -> FSWrite m () 
WriteFileUtf8 :: Path b File -> Text -> FSWrite m () 

writeFileUtf8 :: forall r b. MemberWithError FSWrite r => Path b File -> Text -> Sem r () Source #

writeFileBS :: forall r b. MemberWithError FSWrite r => Path b File -> ByteString -> Sem r () Source #

data FSCopy m a where Source #

Constructors

CopyFile :: Path b File -> Path b' File -> FSCopy m () 

copyFile :: forall r b b'. MemberWithError FSCopy r => Path b File -> Path b' File -> Sem r () Source #

data FSTemp m a where Source #

Constructors

CreateTempDirectory :: FSTemp m (Path Abs Dir) 

data FSDir m a where Source #

Constructors

CreateDirectory :: Path b Dir -> FSDir m () 
RemoveDirectory :: Path b Dir -> FSDir m () 

removeDirectory :: forall r b. MemberWithError FSDir r => Path b Dir -> Sem r () Source #

createDirectory :: forall r b. MemberWithError FSDir r => Path b Dir -> Sem r () Source #

runFSExist :: Member (Embed IO) r => Sem (FSExist ': r) a -> Sem r a Source #

runFSRead :: Member (Embed IO) r => Sem (FSRead ': r) a -> Sem r a Source #

runFSWrite :: Member (Embed IO) r => Sem (FSWrite ': r) a -> Sem r a Source #

runFSCopy :: Member (Embed IO) r => Sem (FSCopy ': r) a -> Sem r a Source #

runFSDir :: Member (Embed IO) r => Sem (FSDir ': r) a -> Sem r a Source #

runFSTemp :: Member (Embed IO) r => Sem (FSTemp ': r) a -> Sem r a Source #