summaryrefslogtreecommitdiff
path: root/haskell/src/SpaceTraders/Database/Utils.hs
diff options
context:
space:
mode:
authorJulien Dessaux2023-07-18 00:02:33 +0200
committerJulien Dessaux2023-07-18 00:02:33 +0200
commit4af96da5670566c111fa5c7dac9572eaac021a4b (patch)
tree74ae00fb63e087437bc3a62152d4b7fecf8c039e /haskell/src/SpaceTraders/Database/Utils.hs
parent[haskell] Trigger a program restart when the api client encounters a server r... (diff)
downloadspacetraders-4af96da5670566c111fa5c7dac9572eaac021a4b.tar.gz
spacetraders-4af96da5670566c111fa5c7dac9572eaac021a4b.tar.bz2
spacetraders-4af96da5670566c111fa5c7dac9572eaac021a4b.zip
[haskell] Refactored everything with a ReaderT pattern
Diffstat (limited to '')
-rw-r--r--haskell/src/SpaceTraders/Database/Utils.hs11
1 files changed, 11 insertions, 0 deletions
diff --git a/haskell/src/SpaceTraders/Database/Utils.hs b/haskell/src/SpaceTraders/Database/Utils.hs
new file mode 100644
index 0000000..4d933bd
--- /dev/null
+++ b/haskell/src/SpaceTraders/Database/Utils.hs
@@ -0,0 +1,11 @@
+module SpaceTraders.Database.Utils
+ ( decodeText
+ ) where
+
+import Data.Aeson
+import Data.ByteString.Builder(toLazyByteString)
+import qualified Data.Text as T
+import Data.Text.Encoding (encodeUtf8Builder)
+
+decodeText :: FromJSON a => T.Text -> Maybe a
+decodeText = decode . toLazyByteString . encodeUtf8Builder