{-# LANGUAGE GeneralizedNewtypeDeriving #-} module Hans.Message.Types where import Control.Applicative ((<$>)) import Data.Serialize.Get (Get,getWord16be) import Data.Serialize.Put (Putter,putWord16be) import Data.Word (Word16) newtype Lifetime = Lifetime { getLifetime :: Word16 } deriving (Show,Eq,Ord,Num) parseLifetime :: Get Lifetime parseLifetime = Lifetime <$> getWord16be renderLifetime :: Putter Lifetime renderLifetime = putWord16be . getLifetime