diff options
Diffstat (limited to 'Log.hs')
-rw-r--r-- | Log.hs | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -4,6 +4,7 @@ module Log where import Types import Hash +import Memory import GHC.Generics (Generic) import Data.Aeson @@ -28,6 +29,9 @@ data ActivityLog = ActivityLog } deriving (Show, Generic) +instance DataSize ActivityLog where + dataSize l = dataSize (loggedActivity l) + dataSize (loggedHash l) + 2 + instance ToJSON (ActivityLog) instance FromJSON (ActivityLog) @@ -36,6 +40,10 @@ data SomeActivity | ActivityEntered (Activity Entered) deriving (Show, Generic) +instance DataSize SomeActivity where + dataSize (ActivitySeen a) = dataSize a + dataSize (ActivityEntered a) = dataSize a + instance ToJSON SomeActivity where toJSON = genericToJSON sumOptions toEncoding = genericToEncoding sumOptions |