summaryrefslogtreecommitdiff
path: root/haskell/src/SpaceTraders/APIClient/Client.hs
diff options
context:
space:
mode:
authorJulien Dessaux2023-07-10 00:31:13 +0200
committerJulien Dessaux2023-07-10 00:31:13 +0200
commit8249bf432abcf4aad261a79ac2d802c0ac3a0391 (patch)
treed9d89135dcefe6c388b8fa7789288bc431634ecf /haskell/src/SpaceTraders/APIClient/Client.hs
parent[haskell] Simplify API Error JSON decoding (diff)
downloadspacetraders-8249bf432abcf4aad261a79ac2d802c0ac3a0391.tar.gz
spacetraders-8249bf432abcf4aad261a79ac2d802c0ac3a0391.tar.bz2
spacetraders-8249bf432abcf4aad261a79ac2d802c0ac3a0391.zip
[haskell] Refactored JSON parsing code
Diffstat (limited to '')
-rw-r--r--haskell/src/SpaceTraders/APIClient/Client.hs4
1 files changed, 1 insertions, 3 deletions
diff --git a/haskell/src/SpaceTraders/APIClient/Client.hs b/haskell/src/SpaceTraders/APIClient/Client.hs
index 0bf92a8..cbbe422 100644
--- a/haskell/src/SpaceTraders/APIClient/Client.hs
+++ b/haskell/src/SpaceTraders/APIClient/Client.hs
@@ -11,7 +11,6 @@ module SpaceTraders.APIClient.Client
) where
import Control.Concurrent
-import Control.Monad
import Data.Aeson
import Data.Aeson.Types
import qualified Data.Text as T
@@ -23,8 +22,7 @@ import SpaceTraders.APIClient.Errors
data FromJSON a => APIMessage a = APIMessage { data_ :: a } deriving (Show)
instance FromJSON a => FromJSON (APIMessage a) where
- parseJSON (Object o) = APIMessage <$> o .: "data"
- parseJSON _ = mzero
+ parseJSON = withObject "APIMessage" $ \o -> APIMessage <$> o .: "data"
defaultReq :: Request
defaultReq = setRequestHost "api.spacetraders.io"