module Conversion.ByteString () where import BasePrelude import Conversion import qualified Data.ByteString as BS import qualified Data.ByteString.Char8 as BSC import qualified Data.ByteString.Lazy as BL import qualified Data.ByteString.Builder as BB instance Conversion BS.ByteString [Word8] where {-# INLINE convert #-} convert = BS.unpack instance Conversion BS.ByteString [Char] where {-# INLINE convert #-} convert = BSC.unpack instance Conversion BS.ByteString BL.ByteString where {-# INLINE convert #-} convert = BL.fromStrict instance Conversion BS.ByteString BB.Builder where {-# INLINE convert #-} convert = BB.byteString instance Conversion BL.ByteString [Word8] where {-# INLINE convert #-} convert = BL.unpack instance Conversion BL.ByteString BS.ByteString where {-# INLINE convert #-} convert = BL.toStrict instance Conversion BL.ByteString BB.Builder where {-# INLINE convert #-} convert = BB.lazyByteString instance Conversion BB.Builder [Word8] where {-# INLINE convert #-} convert = convert . BB.toLazyByteString instance Conversion BB.Builder BS.ByteString where {-# INLINE convert #-} convert = convert . BB.toLazyByteString instance Conversion BB.Builder BL.ByteString where {-# INLINE convert #-} convert = BB.toLazyByteString instance Conversion [Word8] BS.ByteString where {-# INLINE convert #-} convert = BS.pack instance Conversion [Word8] BL.ByteString where {-# INLINE convert #-} convert = BL.pack instance Conversion [Word8] BB.Builder where {-# INLINE convert #-} convert = foldMap BB.word8 instance Conversion Word8 BS.ByteString where {-# INLINE convert #-} convert = BS.singleton instance Conversion Word8 BL.ByteString where {-# INLINE convert #-} convert = BL.singleton instance Conversion Word8 BB.Builder where {-# INLINE convert #-} convert = BB.word8