vaultaire-common-2.9.1: lib/Vaultaire/Types/PassThrough.hs
--
-- Copyright © 2013-2014 Anchor Systems, Pty Ltd and Others
--
-- The code in this file, and the program it is a part of, is
-- made available to you by its authors as open source software:
-- you can redistribute it and/or modify it under the terms of
-- the 3-clause BSD licence.
--
module Vaultaire.Types.PassThrough
(
PassThrough(..)
) where
import Control.Applicative
import Data.ByteString (ByteString, pack)
import Test.QuickCheck
import Vaultaire.Classes.WireFormat
newtype PassThrough = PassThrough { unPassThrough :: ByteString }
deriving (Eq, Show)
instance WireFormat PassThrough where
toWire = unPassThrough
fromWire = Right . PassThrough
instance Arbitrary PassThrough where
arbitrary = PassThrough . pack <$> arbitrary