{-# LANGUAGE FlexibleInstances #-} module Data.ByteString.Convert ( AsByteString(..) ) where import qualified Data.ByteString as B import qualified Data.ByteString.Lazy as L import Data.Word -- |Convert to/from strict ByteStrings class AsByteString a where toByteString :: a -> B.ByteString fromByteString :: B.ByteString -> a instance AsByteString B.ByteString where toByteString = id fromByteString = id instance AsByteString L.ByteString where toByteString = L.toStrict fromByteString = L.fromStrict instance AsByteString [Word8] where toByteString = B.pack fromByteString = B.unpack