rattletrap-9.0.3: source/library/Rattletrap/Decode/Header.hs
module Rattletrap.Decode.Header
( decodeHeader
)
where
import Rattletrap.Decode.Common
import Rattletrap.Decode.Dictionary
import Rattletrap.Decode.Property
import Rattletrap.Decode.Str
import Rattletrap.Decode.Word32le
import Rattletrap.Type.Header
import Rattletrap.Type.Word32le
decodeHeader :: Decode Header
decodeHeader = do
(major, minor) <- (,) <$> decodeWord32le <*> decodeWord32le
Header major minor
<$> decodeWhen
(major >= Word32le 868 && minor >= Word32le 18)
decodeWord32le
<*> decodeStr
<*> decodeDictionary decodeProperty