on master help sign in
Add binary instance for Regions
22300f3Evan Czaplicki
src/Reporting/Region.hs+27
@@ -3,6 +3,11 @@ module Reporting.Region where
3
3
4import Data.Aeson ((.=))
4import Data.Aeson ((.=))
5import qualified Data.Aeson as Json
5import qualified Data.Aeson as Json
6+import Data.Binary
7+
8+
9+
10+-- REGION
6
11
7
12
8data Region =
13data Region =
@@ -60,3 +65,25 @@ instance Json.ToJSON Position where
60 [ "line" .= line
65 [ "line" .= line
61 , "column" .= column
66 , "column" .= column
62 ]
67 ]
68+
69+
70+
71+-- BINARY
72+
73+
74+instance Binary Region where
75+ get =
76+ Region <$> get <*> get
77+
78+ put (Region start end) =
79+ do put start
80+ put end
81+
82+
83+instance Binary Position where
84+ get =
85+ Position <$> get <*> get
86+
87+ put (Position line column) =
88+ do put line
89+ put column