module Data.CQRS.Serialize ( decode' , encode ) where import Data.ByteString (ByteString) import Data.SafeCopy (SafeCopy, safeGet, safePut) import Data.Serialize (runGet, runPut) -- | Decode a serialized value irrefutably. decode' :: SafeCopy e => ByteString -> e decode' = either error id . runGet safeGet -- | Encode a value. encode :: SafeCopy e => e -> ByteString encode = runPut . safePut