20 lines
480 B
Haskell
20 lines
480 B
Haskell
|
{-# LANGUAGE StandaloneDeriving #-}
|
||
|
{-# LANGUAGE DeriveGeneric #-}
|
||
|
module Game where
|
||
|
|
||
|
import Hanafuda (Card(..))
|
||
|
import Hanafuda.KoiKoi (Move(..))
|
||
|
import Data.Aeson (FromJSON(..), ToJSON(..), genericToEncoding)
|
||
|
import qualified JSON (singleLCField)
|
||
|
import GHC.Generics
|
||
|
|
||
|
deriving instance Generic Card
|
||
|
deriving instance Generic Move
|
||
|
|
||
|
instance FromJSON Card
|
||
|
instance ToJSON Card
|
||
|
|
||
|
instance FromJSON Move
|
||
|
instance ToJSON Move where
|
||
|
toEncoding = genericToEncoding JSON.singleLCField
|