Browse Source

Generic instances for Tick and DataType

master
Denis Tereshkin 9 years ago
parent
commit
11d1d70e8b
  1. 7
      src/ATrade/Types.hs

7
src/ATrade/Types.hs

@ -1,4 +1,5 @@ @@ -1,4 +1,5 @@
{-# LANGUAGE OverloadedStrings, TypeSynonymInstances, FlexibleInstances #-}
{-# LANGUAGE DeriveGeneric #-}
module ATrade.Types (
TickerId,
@ -23,6 +24,8 @@ module ATrade.Types ( @@ -23,6 +24,8 @@ module ATrade.Types (
defaultClientSecurityParams
) where
import GHC.Generics
import Control.Monad
import Data.Aeson
import Data.Aeson.Types
@ -55,7 +58,7 @@ data DataType = Unknown @@ -55,7 +58,7 @@ data DataType = Unknown
| Volatility
| TotalSupply
| TotalDemand
deriving (Show, Eq, Ord)
deriving (Show, Eq, Ord, Generic)
instance Enum DataType where
fromEnum x
@ -89,7 +92,7 @@ data Tick = Tick { @@ -89,7 +92,7 @@ data Tick = Tick {
timestamp :: !UTCTime,
value :: !Decimal,
volume :: !Integer
} deriving (Show, Eq)
} deriving (Show, Eq, Generic)
serializeTickHeader :: Tick -> ByteString
serializeTickHeader tick = B.fromStrict . E.encodeUtf8 $ security tick

Loading…
Cancel
Save