rattletrap-0.3.0: library/Rattletrap/Attribute/Enum.hs
module Rattletrap.Attribute.Enum where
import qualified Data.Binary.Bits.Get as BinaryBit
import qualified Data.Binary.Bits.Put as BinaryBit
import qualified Data.Word as Word
newtype EnumAttribute = EnumAttribute
{ enumAttributeValue :: Word.Word16
} deriving (Eq, Ord, Show)
getEnumAttribute :: BinaryBit.BitGet EnumAttribute
getEnumAttribute = do
value <- BinaryBit.getWord16be 11
pure (EnumAttribute value)
putEnumAttribute :: EnumAttribute -> BinaryBit.BitPut ()
putEnumAttribute enumAttribute =
BinaryBit.putWord16be 11 (enumAttributeValue enumAttribute)