This module unifies some parts of bytestring
(as is in 0.9.1.5
version) and utf8-string
(as is in 0.3.6
version) packages - it
exports Data.ByteString.Lazy.Char8, Data.ByteString.Lazy.UTF8 and
System.IO.UTF8, while hiding from the first everything that is
to be found in latter two. Ofcourse System.IO.UTF8 routines
are wrapped to work with lazy ByteStrings
instead of Strings
.
This way we get a module an Data.ByteString.Lazy.Char8 alternative
that won't corrupt Unicode symbols, an that will make
a proper IO with them.
This module is intended to be imported qualified, to avoid name clashes with Prelude functions. eg.
import qualified Data.ByteString.Lazy.UTF8.Unified as B
or even
import qualified Data.ByteString.Lazy.UTF8.Unified as Lazy (ByteString) import qualified Data.ByteString.Lazy.UTF8.Unified as B hiding (ByteString)