Portability | portable |
---|---|
Maintainer | jmillikin@gmail.com |
Re‐exports contents of System.FilePath.Rules, defaulting to the current OS’s rules when needed.
- module System.FilePath
- currentOS :: Rules
- toBytes :: FilePath -> ByteString
- fromBytes :: ByteString -> FilePath
- toText :: FilePath -> Either Text Text
- fromText :: Text -> FilePath
- valid :: FilePath -> Bool
- splitSearchPath :: ByteString -> [FilePath]
Documentation
module System.FilePath
Type conversions
toBytes :: FilePath -> ByteStringSource
Convert a FilePath
into a strict ByteString
, suitable for passing
to OS libraries.
fromBytes :: ByteString -> FilePathSource
Parse a strict ByteString
, such as those received from OS libraries,
into a FilePath
.
toText :: FilePath -> Either Text TextSource
Attempt to convert a FilePath
to human‐readable text.
If the path is decoded successfully, the result is a Right
containing
the decoded text. Successfully decoded text can be converted back to the
original path using fromText
.
If the path cannot be decoded, the result is a Left
containing an
approximation of the original path. If displayed to the user, this value
should be accompanied by some warning that the path has an invalid
encoding. Approximated text cannot be converted back to the original path.
This function ignores the user’s locale, and assumes all file paths
are encoded in UTF8. If you need to display file paths with an unusual or
obscure encoding, use toBytes
and then decode them manually.
Since: 0.2
Rule‐specific path properties
splitSearchPath :: ByteString -> [FilePath]Source
Split a search path, such as $PATH
or $PYTHONPATH
, into a list
of FilePath
s.