diff options
author | Joachim Breitner <mail@joachim-breitner.de> | 2022-10-08 11:12:36 +0200 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2022-10-10 23:16:11 -0400 |
commit | ed4b5885bdac7b986655bb40f8c9ece2f8735c98 (patch) | |
tree | 2dd28f7705c5e2165ae5fc555f11cf85f80119b9 | |
parent | 96d32ff289f87b8c78f0a8d1b11295c9563ec020 (diff) | |
download | haskell-ed4b5885bdac7b986655bb40f8c9ece2f8735c98.tar.gz |
Utils.JSON: do not escapeJsonString in ToJson String instance
as `escapeJsonString` is used in `renderJSON`, so the `JSString`
constructor is meant to carry the unescaped string.
-rw-r--r-- | compiler/GHC/Utils/Json.hs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/compiler/GHC/Utils/Json.hs b/compiler/GHC/Utils/Json.hs index 3654ccd8b7..acccc88658 100644 --- a/compiler/GHC/Utils/Json.hs +++ b/compiler/GHC/Utils/Json.hs @@ -14,6 +14,7 @@ data JsonDoc where JSBool :: Bool -> JsonDoc JSInt :: Int -> JsonDoc JSString :: String -> JsonDoc + -- ^ The 'String' is unescaped JSArray :: [JsonDoc] -> JsonDoc JSObject :: [(String, JsonDoc)] -> JsonDoc @@ -57,7 +58,7 @@ class ToJson a where json :: a -> JsonDoc instance ToJson String where - json = JSString . escapeJsonString + json = JSString instance ToJson Int where json = JSInt |