Safe Haskell | None |
---|---|
Language | GHC2021 |
Effectful.PosixCompat.Files.Dynamic
Description
Provides a dynamic effect for System.PosixCompat.Files.
Since: 0.1
Synopsis
- data PosixCompatFiles (a :: Type -> Type) b where
- SetFileMode :: forall (a :: Type -> Type). FilePath -> FileMode -> PosixCompatFiles a ()
- SetFdMode :: forall (a :: Type -> Type). Fd -> FileMode -> PosixCompatFiles a ()
- SetFileCreationMask :: forall (a :: Type -> Type). FileMode -> PosixCompatFiles a CMode
- FileAccess :: forall (a :: Type -> Type). FilePath -> Bool -> Bool -> Bool -> PosixCompatFiles a Bool
- FileExist :: forall (a :: Type -> Type). FilePath -> PosixCompatFiles a Bool
- GetFileStatus :: forall (a :: Type -> Type). FilePath -> PosixCompatFiles a FileStatus
- GetFdStatus :: forall (a :: Type -> Type). Fd -> PosixCompatFiles a FileStatus
- GetSymbolicLinkStatus :: forall (a :: Type -> Type). FilePath -> PosixCompatFiles a FileStatus
- CreateNamedPipe :: forall (a :: Type -> Type). FilePath -> FileMode -> PosixCompatFiles a ()
- CreateDevice :: forall (a :: Type -> Type). FilePath -> FileMode -> DeviceID -> PosixCompatFiles a ()
- CreateLink :: forall (a :: Type -> Type). FilePath -> FilePath -> PosixCompatFiles a ()
- RemoveLink :: forall (a :: Type -> Type). FilePath -> PosixCompatFiles a ()
- CreateSymbolicLink :: forall (a :: Type -> Type). FilePath -> FilePath -> PosixCompatFiles a ()
- ReadSymbolicLink :: forall (a :: Type -> Type). FilePath -> PosixCompatFiles a [Char]
- Rename :: forall (a :: Type -> Type). FilePath -> FilePath -> PosixCompatFiles a ()
- SetOwnerAndGroup :: forall (a :: Type -> Type). FilePath -> UserID -> GroupID -> PosixCompatFiles a ()
- SetFdOwnerAndGroup :: forall (a :: Type -> Type). Fd -> UserID -> GroupID -> PosixCompatFiles a ()
- SetSymbolicLinkOwnerAndGroup :: forall (a :: Type -> Type). FilePath -> UserID -> GroupID -> PosixCompatFiles a ()
- SetFileTimes :: forall (a :: Type -> Type). FilePath -> EpochTime -> EpochTime -> PosixCompatFiles a ()
- TouchFile :: forall (a :: Type -> Type). FilePath -> PosixCompatFiles a ()
- SetFileSize :: forall (a :: Type -> Type). FilePath -> FileOffset -> PosixCompatFiles a ()
- SetFdSize :: forall (a :: Type -> Type). Fd -> FileOffset -> PosixCompatFiles a ()
- GetPathVar :: forall (a :: Type -> Type). FilePath -> PathVar -> PosixCompatFiles a CLong
- GetFdPathVar :: forall (a :: Type -> Type). Fd -> PathVar -> PosixCompatFiles a CLong
- setFileMode :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> FileMode -> Eff es ()
- setFdMode :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => Fd -> FileMode -> Eff es ()
- setFileCreationMask :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FileMode -> Eff es FileMode
- fileAccess :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> Bool -> Bool -> Bool -> Eff es Bool
- fileExist :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> Eff es Bool
- getFileStatus :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> Eff es FileStatus
- getFdStatus :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => Fd -> Eff es FileStatus
- getSymbolicLinkStatus :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> Eff es FileStatus
- createNamedPipe :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> FileMode -> Eff es ()
- createDevice :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> FileMode -> DeviceID -> Eff es ()
- createLink :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> FilePath -> Eff es ()
- removeLink :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> Eff es ()
- createSymbolicLink :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> FilePath -> Eff es ()
- readSymbolicLink :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> Eff es FilePath
- rename :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> FilePath -> Eff es ()
- setOwnerAndGroup :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> UserID -> GroupID -> Eff es ()
- setFdOwnerAndGroup :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => Fd -> UserID -> GroupID -> Eff es ()
- setSymbolicLinkOwnerAndGroup :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> UserID -> GroupID -> Eff es ()
- setFileTimes :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> EpochTime -> EpochTime -> Eff es ()
- touchFile :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> Eff es ()
- setFileSize :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> FileOffset -> Eff es ()
- setFdSize :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => Fd -> FileOffset -> Eff es ()
- getPathVar :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> PathVar -> Eff es Limit
- getFdPathVar :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => Fd -> PathVar -> Eff es Limit
- runPosixFilesCompat :: forall (es :: [Effect]) a. (HasCallStack, IOE :> es) => Eff (PosixCompatFiles ': es) a -> Eff es a
- data PathType
- displayPathType :: IsString a => PathType -> a
- throwIfWrongPathType :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => String -> PathType -> FilePath -> Eff es ()
- isPathType :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => PathType -> FilePath -> Eff es Bool
- getPathType :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> Eff es PathType
Effect
data PosixCompatFiles (a :: Type -> Type) b where Source #
Dynamic effect for System.PosixCompat.Files.
Since: 0.1
Constructors
Instances
ShowEffect PosixCompatFiles Source # | Since: 0.1 |
Defined in Effectful.PosixCompat.Files.Dynamic Methods showEffectCons :: forall (m :: Type -> Type) a. PosixCompatFiles m a -> String Source # | |
type DispatchOf PosixCompatFiles Source # | Since: 0.1 |
Defined in Effectful.PosixCompat.Files.Dynamic |
setFileMode :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> FileMode -> Eff es () Source #
Lifted setFileMode
.
Since: 0.1
setFdMode :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => Fd -> FileMode -> Eff es () Source #
Lifted setFdMode
.
Since: 0.1
setFileCreationMask :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FileMode -> Eff es FileMode Source #
Lifted setFileCreationMask
.
Since: 0.1
fileAccess :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> Bool -> Bool -> Bool -> Eff es Bool Source #
Lifted fileAccess
.
Since: 0.1
fileExist :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> Eff es Bool Source #
Lifted fileExist
.
Since: 0.1
getFileStatus :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> Eff es FileStatus Source #
Lifted getFileStatus
.
Since: 0.1
getFdStatus :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => Fd -> Eff es FileStatus Source #
Lifted getFdStatus
.
Since: 0.1
getSymbolicLinkStatus :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> Eff es FileStatus Source #
Lifted getSymbolicLinkStatus
.
Since: 0.1
createNamedPipe :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> FileMode -> Eff es () Source #
Lifted createNamedPipe
.
Since: 0.1
createDevice :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> FileMode -> DeviceID -> Eff es () Source #
Lifted createDevice
.
Since: 0.1
createLink :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> FilePath -> Eff es () Source #
Lifted createLink
.
Since: 0.1
removeLink :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> Eff es () Source #
Lifted removeLink
.
Since: 0.1
createSymbolicLink :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> FilePath -> Eff es () Source #
Lifted createSymbolicLink
.
Since: 0.1
readSymbolicLink :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> Eff es FilePath Source #
Lifted readSymbolicLink
.
Since: 0.1
rename :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> FilePath -> Eff es () Source #
Lifted rename
.
Since: 0.1
setOwnerAndGroup :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> UserID -> GroupID -> Eff es () Source #
Lifted setOwnerAndGroup
.
Since: 0.1
setFdOwnerAndGroup :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => Fd -> UserID -> GroupID -> Eff es () Source #
Lifted setFdOwnerAndGroup
.
Since: 0.1
setSymbolicLinkOwnerAndGroup :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> UserID -> GroupID -> Eff es () Source #
Lifted setSymbolicLinkOwnerAndGroup
.
Since: 0.1
setFileTimes :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> EpochTime -> EpochTime -> Eff es () Source #
Lifted setFileTimes
.
Since: 0.1
touchFile :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> Eff es () Source #
Lifted touchFile
.
Since: 0.1
setFileSize :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> FileOffset -> Eff es () Source #
Lifted setFileSize
.
Since: 0.1
setFdSize :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => Fd -> FileOffset -> Eff es () Source #
Lifted setFdSize
.
Since: 0.1
getPathVar :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> PathVar -> Eff es Limit Source #
Lifted getPathVar
.
Since: 0.1
getFdPathVar :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => Fd -> PathVar -> Eff es Limit Source #
Lifted getFdPathVar
.
Since: 0.1
Handler
runPosixFilesCompat :: forall (es :: [Effect]) a. (HasCallStack, IOE :> es) => Eff (PosixCompatFiles ': es) a -> Eff es a Source #
Runs PosixCompatFiles
in IO
.
Since: 0.1
PathType
Path type.
Since: fs-utils-0.1
Constructors
PathTypeFile | Since: fs-utils-0.1 |
PathTypeDirectory | Since: fs-utils-0.1 |
PathTypeSymbolicLink | Since: fs-utils-0.1 |
PathTypeOther | Since: fs-utils-0.1 |
Instances
NFData PathType | Since: fs-utils-0.1 | ||||
Defined in FileSystem.PathType | |||||
Bounded PathType | Since: fs-utils-0.1 | ||||
Enum PathType | Since: fs-utils-0.1 | ||||
Defined in FileSystem.PathType | |||||
Generic PathType | |||||
Defined in FileSystem.PathType Associated Types
| |||||
Show PathType | Since: fs-utils-0.1 | ||||
Eq PathType | Since: fs-utils-0.1 | ||||
Ord PathType | Since: fs-utils-0.1 | ||||
Defined in FileSystem.PathType | |||||
type Rep PathType | Since: fs-utils-0.1 | ||||
Defined in FileSystem.PathType type Rep PathType = D1 ('MetaData "PathType" "FileSystem.PathType" "fs-utils-0.1-539e06479b7c961598a9ab40b37c6d853cab165be3a31b07a164625401edfdce" 'False) ((C1 ('MetaCons "PathTypeFile" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "PathTypeDirectory" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "PathTypeSymbolicLink" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "PathTypeOther" 'PrefixI 'False) (U1 :: Type -> Type))) |
displayPathType :: IsString a => PathType -> a Source #
String representation of PathType
.
Since: fs-utils-0.1
Functions
throwIfWrongPathType :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => String -> PathType -> FilePath -> Eff es () Source #
Throws IOException
if the path does not exist or the expected path type
does not match actual.
Since: 0.1
isPathType :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => PathType -> FilePath -> Eff es Bool Source #
Checks that the path type matches the expectation. Throws
IOException
if the path does not exist or the type cannot be detected.
Since: 0.1
getPathType :: forall (es :: [Effect]). (HasCallStack, PosixCompatFiles :> es) => FilePath -> Eff es PathType Source #
Returns the type for a given path without following symlinks.
Throws IOException
if the path does not exist or the type cannot be
detected.
Since: 0.1