module Rattletrap.AttributeValue.Int where import Rattletrap.Int32 import qualified Data.Binary.Bits.Get as BinaryBit import qualified Data.Binary.Bits.Put as BinaryBit newtype IntAttributeValue = IntAttributeValue { intAttributeValueValue :: Int32 } deriving (Eq, Ord, Show) getIntAttributeValue :: BinaryBit.BitGet IntAttributeValue getIntAttributeValue = do value <- getInt32Bits pure (IntAttributeValue value) putIntAttributeValue :: IntAttributeValue -> BinaryBit.BitPut () putIntAttributeValue intAttributeValue = putInt32Bits (intAttributeValueValue intAttributeValue)