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

Polysemy.FS

Documentation

data FSExist (m :: k) a where Source #

Constructors

DoesFileExist :: forall {k} b (m :: k). Path b File -> FSExist m Bool 
DoesDirExist :: forall {k} b (m :: k). Path b Dir -> FSExist m Bool 

doesFileExist :: forall (r :: EffectRow) b. Member (FSExist :: (Type -> Type) -> Type -> Type) r => Path b File -> Sem r Bool Source #

doesDirExist :: forall (r :: EffectRow) b. Member (FSExist :: (Type -> Type) -> Type -> Type) r => Path b Dir -> Sem r Bool Source #

data FSRead (m :: k) a where Source #

Constructors

ReadFileBS :: forall {k} b (m :: k). Path b File -> FSRead m ByteString 
ReadFileUtf8 :: forall {k} b (m :: k). Path b File -> FSRead m Text 

readFileBS :: forall (r :: EffectRow) b. Member (FSRead :: (Type -> Type) -> Type -> Type) r => Path b File -> Sem r ByteString Source #

readFileUtf8 :: forall (r :: EffectRow) b. Member (FSRead :: (Type -> Type) -> Type -> Type) r => Path b File -> Sem r Text Source #

data FSWrite (m :: k) a where Source #

Constructors

WriteFileBS :: forall {k} b (m :: k). Path b File -> ByteString -> FSWrite m () 
WriteFileUtf8 :: forall {k} b (m :: k). Path b File -> Text -> FSWrite m () 

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

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

data FSCopy (m :: k) a where Source #

Constructors

CopyFile :: forall {k} b b' (m :: k). Path b File -> Path b' File -> FSCopy m () 

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

data FSTemp (m :: k) a where Source #

Constructors

CreateTempDirectory :: forall {k} (m :: k). FSTemp m (Path Abs Dir) 

createTempDirectory :: forall (r :: EffectRow). Member (FSTemp :: (Type -> Type) -> Type -> Type) r => Sem r (Path Abs Dir) Source #

data FSDir (m :: k) a where Source #

Constructors

CreateDirectory :: forall {k} b (m :: k). Path b Dir -> FSDir m () 
RemoveDirectory :: forall {k} b (m :: k). Path b Dir -> FSDir m () 

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

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

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

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

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

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

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

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