Add Store instances

This commit is contained in:
2022-08-21 12:21:05 +01:00
parent 1ce7d4a72d
commit dd62e30026
92 changed files with 465 additions and 255 deletions
+5 -3
View File
@@ -5,6 +5,8 @@
module Dodge.Data.Magnet where
import TH.Derive
import Data.Store
import Data.Binary
import Flat
import LinearHelp ()
@@ -15,13 +17,13 @@ import Geometry.Data
newtype MagnetUpdate = MagnetUpdateTimer Int
deriving (Eq, Ord, Show, Read, Generic, Flat)
instance Binary MagnetUpdate
$($(derive [d| instance Deriving (Store MagnetUpdate) |]))
data MagnetBuBu
= MagnetBuId
| MagnetBuBuCurveAroundField Float Float
deriving (Eq, Ord, Show, Read, Generic, Flat)
instance Binary MagnetBuBu
$($(derive [d| instance Deriving (Store MagnetBuBu) |]))
data Magnet = Magnet
{ _mgID :: Int
@@ -30,7 +32,7 @@ data Magnet = Magnet
, _mgField :: MagnetBuBu
}
deriving (Eq, Ord, Show, Read, Generic, Flat)
instance Binary Magnet
$($(derive [d| instance Deriving (Store Magnet ) |]))
makeLenses ''Magnet
deriveJSON defaultOptions ''MagnetUpdate