summaryrefslogtreecommitdiffhomepage
path: root/Log.hs
diff options
context:
space:
mode:
Diffstat (limited to 'Log.hs')
-rw-r--r--Log.hs8
1 files changed, 8 insertions, 0 deletions
diff --git a/Log.hs b/Log.hs
index 90f1b53..8690f27 100644
--- a/Log.hs
+++ b/Log.hs
@@ -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