@@ -9,8 +9,10 @@ module Json.Encode
@@ -34,6 +36,7 @@ data Value
34 | Object [(String, Value)]
36 | Object [(String, Value)]
35 | String B.Builder
37 | String B.Builder
36 | Boolean Bool
38 | Boolean Bool
39array :: [Value] -> Value
42array :: [Value] -> Value
@@ -61,6 +64,11 @@ bool =
64dict :: (k -> String) -> (v -> Value) -> Map.Map k v -> Value
72dict :: (k -> String) -> (v -> Value) -> Map.Map k v -> Value
65dict encodeKey encodeValue pairs =
73dict encodeKey encodeValue pairs =
66 Object $ map (encodeKey *** encodeValue) (Map.toList pairs)
74 Object $ map (encodeKey *** encodeValue) (Map.toList pairs)
@@ -72,6 +80,15 @@ list encodeEntry entries =
86+(==>) :: a -> b -> (a, b)
75-- WRITE TO FILE
92-- WRITE TO FILE
@@ -111,6 +128,9 @@ encodeHelp indent value =
111 Boolean boolean ->
128 Boolean boolean ->
112 B.string7 (if boolean then "true" else "false")
129 B.string7 (if boolean then "true" else "false")
116-- ENCODE ARRAY
136-- ENCODE ARRAY