diff --git a/package.json b/package.json index b718f0e..b2282a8 100644 --- a/package.json +++ b/package.json @@ -2,13 +2,13 @@ "private": true, "scripts": { "clean": "rimraf output && rimraf .pulp-cache", - "build": "pulp build --censor-lib --strict", + "build": "pulp build -- --censor-lib --strict", "test": "pulp test" }, "devDependencies": { - "pulp": "^9.0.1", - "purescript-psa": "^0.3.9", - "purescript": "^0.10.1", + "pulp": "^10.0.0", + "purescript-psa": "^0.4.0", + "purescript": "^0.10.7", "rimraf": "^2.5.4" } } diff --git a/src/Data/Argonaut/Decode/Class.purs b/src/Data/Argonaut/Decode/Class.purs index 9014ff2..0502690 100644 --- a/src/Data/Argonaut/Decode/Class.purs +++ b/src/Data/Argonaut/Decode/Class.purs @@ -133,6 +133,9 @@ instance decodeList :: DecodeJson a => DecodeJson (List a) where instance decodeMap :: (Ord a, DecodeJson a, DecodeJson b) => DecodeJson (M.Map a b) where decodeJson = map (M.fromFoldable :: List (Tuple a b) -> M.Map a b) <<< decodeJson +instance decodeVoid :: DecodeJson Void where + decodeJson _ = Left "Value cannot be Void" + decodeJArray :: Json -> Either String JArray decodeJArray = maybe (Left "Value is not an Array") Right <<< toArray diff --git a/src/Data/Argonaut/Encode/Class.purs b/src/Data/Argonaut/Encode/Class.purs index 4f6628e..bf07f58 100644 --- a/src/Data/Argonaut/Encode/Class.purs +++ b/src/Data/Argonaut/Encode/Class.purs @@ -88,3 +88,6 @@ instance encodeStrMap :: EncodeJson a => EncodeJson (SM.StrMap a) where instance encodeMap :: (Ord a, EncodeJson a, EncodeJson b) => EncodeJson (M.Map a b) where encodeJson = encodeJson <<< M.toList + +instance encodeVoid :: EncodeJson Void where + encodeJson = absurd