* Add JSON support This fixes https://github.com/prettier/prettier/issues/1973 by using [json-to-ast] to parse JSON, then converting the AST into a mostly-Babylon AST, so as to piggyback on the existing printer logic. Identifiers and literals are currently printed verbatim from the input, but this could be improved upon later (at least for literals, not sure about identifiers). [json-to-ast]: https://github.com/vtrushin/json-to-ast * Rename `json-to-ast` parser to `json` See https://github.com/prettier/prettier/pull/2173#discussion_r122574644 * json: Use createError to have a pretty error See https://github.com/prettier/prettier/pull/2173#discussion_r122574748 * json: Transform AST without mutations See https://github.com/prettier/prettier/pull/2173#discussion_r122574690
58 lines
1.4 KiB
JSON
58 lines
1.4 KiB
JSON
[
|
|
"JSON Test Pattern pass1",
|
|
{"object with 1 member":["array with 1 element"]},
|
|
{},
|
|
[],
|
|
-42,
|
|
true,
|
|
false,
|
|
null,
|
|
{
|
|
"integer": 1234567890,
|
|
"real": -9876.543210,
|
|
"e": 0.123456789e-12,
|
|
"E": 1.234567890E+34,
|
|
"": 23456789012E66,
|
|
"zero": 0,
|
|
"one": 1,
|
|
"space": " ",
|
|
"quote": "\"",
|
|
"backslash": "\\",
|
|
"controls": "\b\f\n\r\t",
|
|
"slash": "/ & \/",
|
|
"alpha": "abcdefghijklmnopqrstuvwyz",
|
|
"ALPHA": "ABCDEFGHIJKLMNOPQRSTUVWYZ",
|
|
"digit": "0123456789",
|
|
"0123456789": "digit",
|
|
"special": "`1~!@#$%^&*()_+-={':[,]}|;.</>?",
|
|
"hex": "\u0123\u4567\u89AB\uCDEF\uabcd\uef4A",
|
|
"true": true,
|
|
"false": false,
|
|
"null": null,
|
|
"array":[ ],
|
|
"object":{ },
|
|
"address": "50 St. James Street",
|
|
"url": "http://www.JSON.org/",
|
|
"comment": "// /* <!-- --",
|
|
"# -- --> */": " ",
|
|
" s p a c e d " :[1,2 , 3
|
|
|
|
,
|
|
|
|
4 , 5 , 6 ,7 ],"compact":[1,2,3,4,5,6,7],
|
|
"jsontext": "{\"object with 1 member\":[\"array with 1 element\"]}",
|
|
"quotes": "" \u0022 %22 0x22 034 "",
|
|
"\/\\\"\uCAFE\uBABE\uAB98\uFCDE\ubcda\uef4A\b\f\n\r\t`1~!@#$%^&*()_+-=[]{}|;:',./<>?"
|
|
: "A key can be any string"
|
|
},
|
|
0.5 ,98.6
|
|
,
|
|
99.44
|
|
,
|
|
|
|
1066,
|
|
1e1,
|
|
0.1e1,
|
|
1e-1,
|
|
1e00,2e+00,2e-00
|
|
,"rosebud"] |