-- | -- Module : OsString -- Copyright : © 2021 Julian Ospald -- License : MIT -- -- Maintainer : Julian Ospald <hasufell@posteo.de> -- Stability : experimental -- Portability : portable -- -- An implementation of platform specific short 'OsString', which is: -- -- 1. on windows UTF16 data -- 2. on unix UTF8 data -- -- It captures the notion of syscall specific encoding to avoid roundtrip issues -- and memory fragmentation by using unpinned byte arrays. module System.OsString ( -- * String types OsString -- * String construction , toOsString , toOsStringIO , bsToOsString , osstr , packOsString -- * String deconstruction , fromOsString , fromOsStringEnc , fromOsStringIO , unpackOsString -- * Word types , OsChar -- * Word construction , unsafeFromChar -- * Word deconstruction , toChar ) where import System.OsString.Internal ( bsToOsString , unsafeFromChar , toChar , fromOsString , fromOsStringEnc , fromOsStringIO , osstr , packOsString , toOsString , toOsStringIO , unpackOsString ) import System.OsString.Internal.Types ( OsString, OsChar )