Skip to content

Commit 27e0563

Browse files
committed
update json.lua
fix #1859
1 parent 0c5c502 commit 27e0563

File tree

6 files changed

+158
-80
lines changed

6 files changed

+158
-80
lines changed

.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,3 +16,6 @@
1616
[submodule "3rd/EmmyLuaCodeStyle"]
1717
path = 3rd/EmmyLuaCodeStyle
1818
url = https://github.com/CppCXY/EmmyLuaCodeStyle
19+
[submodule "3rd/json.lua"]
20+
path = 3rd/json.lua
21+
url = https://github.com/actboy168/json.lua

3rd/json.lua

Submodule json.lua added at b5f5e7b

script/global.d.lua

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,3 +69,7 @@ CACHEALIVE = false
6969
-- (experiment) Compile files in multi cpu cores
7070
---@type integer
7171
COMPILECORES = 0
72+
73+
-- TODO: delete this after new config
74+
---@diagnostic disable-next-line: lowercase-global
75+
jit = false

script/json-beautify.lua

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -79,11 +79,13 @@ function encode_map.table(t)
7979
statusBuilder[#statusBuilder+1] = "{"
8080
statusDep = statusDep + 1
8181
encode_newline()
82-
local k = key[1]
83-
statusBuilder[#statusBuilder+1] = '"'
84-
statusBuilder[#statusBuilder+1] = encode_string(k)
85-
statusBuilder[#statusBuilder+1] = '": '
86-
encode(t[k])
82+
do
83+
local k = key[1]
84+
statusBuilder[#statusBuilder+1] = '"'
85+
statusBuilder[#statusBuilder+1] = encode_string(k)
86+
statusBuilder[#statusBuilder+1] = '": '
87+
encode(t[k])
88+
end
8789
for i = 2, #key do
8890
local k = key[i]
8991
statusBuilder[#statusBuilder+1] = ","
@@ -154,16 +156,21 @@ local function beautify_option(option)
154156
return setmetatable(option or {}, defaultOpt)
155157
end
156158

157-
local function beautify(v, option)
159+
local function beautify_builder(builder, v, option)
158160
statusVisited = {}
159-
statusBuilder = {}
161+
statusBuilder = builder
160162
statusOpt = beautify_option(option)
161163
statusDep = statusOpt.depth
162164
encode(v)
165+
end
166+
167+
local function beautify(v, option)
168+
beautify_builder({}, v, option)
163169
return table_concat(statusBuilder)
164170
end
165171

166172
json.beautify = beautify
167-
json.beautify_option = beautify_option
173+
json._beautify_builder = beautify_builder
174+
json._beautify_option = beautify_option
168175

169176
return json

0 commit comments

Comments
 (0)