rattletrap-9.0.3: source/library/Rattletrap/Encode/Header.hs
module Rattletrap.Encode.Header
( putHeader
)
where
import Rattletrap.Encode.Dictionary
import Rattletrap.Encode.Property
import Rattletrap.Encode.Str
import Rattletrap.Encode.Word32le
import Rattletrap.Type.Header
import qualified Data.Binary as Binary
putHeader :: Header -> Binary.Put
putHeader header = do
putWord32 (headerEngineVersion header)
putWord32 (headerLicenseeVersion header)
case headerPatchVersion header of
Nothing -> pure ()
Just patchVersion -> putWord32 patchVersion
putText (headerLabel header)
putDictionary putProperty (headerProperties header)