W3cubDocs

/Haskell 9

System.OsString.Encoding.Internal

Safe Haskell None
Language Haskell2010

ucs2le :: TextEncoding Source

mkUcs2le :: CodingFailureMode -> TextEncoding Source

ucs2le_DF :: CodingFailureMode -> IO (TextDecoder ()) Source

ucs2le_EF :: CodingFailureMode -> IO (TextEncoder ()) Source

ucs2le_decode :: DecodeBuffer Source

ucs2le_encode :: EncodeBuffer Source

utf16le_b :: TextEncoding Source

Mimics the base encoding for filesystem operations. This should be total on all inputs (word16 byte arrays).

Note that this has a subtle difference to encodeWithBaseWindows/decodeWithBaseWindows: it doesn't care for the 0x0000 end marker and will as such produce different results. Use takeWhile (/= 'NUL') on the input to recover this behavior.

mkUTF16le_b :: CodingFailureMode -> TextEncoding Source

utf16le_b_DF :: CodingFailureMode -> IO (TextDecoder ()) Source

utf16le_b_EF :: CodingFailureMode -> IO (TextEncoder ()) Source

utf16le_b_decode :: DecodeBuffer Source

utf16le_b_encode :: EncodeBuffer Source

cWcharsToChars_UCS2 :: [Word16] -> [Char] Source

cWcharsToChars :: [Word16] -> [Char] Source

charsToCWchars :: [Char] -> [Word16] Source

withWindowsString :: String -> (Int -> Ptr Word16 -> IO a) -> IO a Source

peekWindowsString :: (Ptr Word16, Int) -> IO String Source

withPosixString :: String -> (CStringLen -> IO a) -> IO a Source

withPosixString' :: String -> (CStringLen -> IO a) -> IO a Source

peekPosixString :: CStringLen -> IO String Source

peekPosixString' :: CStringLen -> IO String Source

decodeWithTE :: TextEncoding -> ShortByteString -> Either EncodingException String Source

Decode with the given TextEncoding.

encodeWithTE :: TextEncoding -> String -> Either EncodingException ShortByteString Source

Encode with the given TextEncoding.

decodeWithBasePosix :: ShortByteString -> IO String Source

This mimics the filepath decoder base uses on unix (using PEP-383), with the small distinction that we're not truncating at NUL bytes (because we're not at the outer FFI layer).

decodeWithBasePosix' :: ShortByteString -> IO String Source

This mimics the string decoder base uses on unix, with the small distinction that we're not truncating at NUL bytes (because we're not at the outer FFI layer).

encodeWithBasePosix :: String -> IO ShortByteString Source

This mimics the filepath encoder base uses on unix (using PEP-383), with the small distinction that we're not truncating at NUL bytes (because we're not at the outer FFI layer).

encodeWithBasePosix' :: String -> IO ShortByteString Source

This mimics the string encoder base uses on unix, with the small distinction that we're not truncating at NUL bytes (because we're not at the outer FFI layer).

decodeWithBaseWindows :: ShortByteString -> IO String Source

This mimics the filepath decoder base uses on windows, with the small distinction that we're not truncating at NUL bytes (because we're not at the outer FFI layer).

encodeWithBaseWindows :: String -> IO ShortByteString Source

This mimics the filepath dencoder base uses on windows, with the small distinction that we're not truncating at NUL bytes (because we're not at the outer FFI layer).

data EncodingException Source

Constructors

EncodingError String (Maybe Word8)

Could not decode a byte sequence because it was invalid under the given encoding, or ran out of input in mid-decode.

showEncodingException :: EncodingException -> String Source

wNUL :: Word16 Source

© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/9.12.1/docs/libraries/os-string-2.0.7-3f43/System-OsString-Encoding-Internal.html