bytestring-conversion 0.2.1 → 0.3.0
raw patch · 2 files changed
+12/−1 lines, 2 files
Files
bytestring-conversion.cabal view
@@ -1,5 +1,5 @@ name: bytestring-conversion-version: 0.2.1+version: 0.3.0 synopsis: Type-classes to convert values to and from ByteString. license: OtherLicense license-file: LICENSE
src/Data/ByteString/Conversion/From.hs view
@@ -31,6 +31,8 @@ import qualified Data.Attoparsec.ByteString.Lazy as Lazy import qualified Data.ByteString.Lazy as Lazy import qualified Data.Text as T+import qualified Data.Text.Lazy as TL+import qualified Data.Text.Lazy.Encoding as TL -- | Parse 'ByteString's. class FromByteString a where@@ -89,6 +91,10 @@ instance FromByteString Text where parser = takeByteString >>= text +-- | UTF-8 is assumed as encoding format.+instance FromByteString TL.Text where+ parser = takeLazyByteString >>= ltext+ instance FromByteString Bool where parser = satisfy (`elem` "tT") *> string "rue" *> pure True <|>@@ -159,3 +165,8 @@ text :: ByteString -> Parser Text text = either (fail . ("Invalid UTF-8: " ++) . show) return . decodeUtf8'+{-# INLINE text #-}++ltext :: Lazy.ByteString -> Parser TL.Text+ltext = either (fail . ("Invalid UTF-8: " ++) . show) return . TL.decodeUtf8'+{-# INLINE ltext #-}