graphql-engine/server/src-lib/Hasura/SQL/Value.hs
Abby Sassel 703928de9f mssql: support query multiplexing in subscriptions
GitOrigin-RevId: 757ceba2c1cdb1107ce0b0e41d2e70ac795d0d73
2021-04-20 16:58:13 +00:00

26 lines
578 B
Haskell

module Hasura.SQL.Value where
import Hasura.Prelude
import qualified Data.Aeson as A
import qualified Data.Aeson.Types as AT
import qualified Data.Text as T
data TxtEncodedVal
= TENull
| TELit !T.Text
deriving (Show, Eq, Generic)
instance Hashable TxtEncodedVal
instance A.ToJSON TxtEncodedVal where
toJSON = \case
TENull -> AT.Null
TELit t -> AT.String t
instance A.FromJSON TxtEncodedVal where
parseJSON A.Null = pure TENull
parseJSON (A.String t) = pure $ TELit t
parseJSON v = AT.typeMismatch "String" v