1- -- MIT License - Copyright (c) 2019 Void (cryon.io)
1+ -- MIT License - Copyright (c) 2021 V (cryon.io)
22
33local WHITESPACE = " \t\n\r "
44local PUNCTUATOR = " {}[],:"
@@ -169,7 +169,7 @@ function HjsonDecoder:new(strict, object_hook, object_pairs_hook)
169169 goto scan_string_loop_start
170170 elseif terminator ~= " \\ " then
171171 if strict then
172- decodeError (s , begin , " Invalid control character" .. ch )
172+ decodeError (s , begin , " Invalid control character" .. terminator )
173173 else
174174 chunks = chunks .. terminator
175175 goto scan_string_loop_start
@@ -292,7 +292,7 @@ function HjsonDecoder:new(strict, object_hook, object_pairs_hook)
292292 local frac = nil
293293 local exp = nil
294294
295- trimmed_range = trim (s :sub (begin , _end - 1 ))
295+ local trimmed_range = trim (s :sub (begin , _end - 1 ))
296296 if chf == " n" and trimmed_range == " null" then
297297 return nil , _end
298298 elseif chf == " t" and trimmed_range == " true" then
@@ -305,12 +305,12 @@ function HjsonDecoder:new(strict, object_hook, object_pairs_hook)
305305 if integer then
306306 frac = s :match (" ^(%.%d+)" , begin + # integer ) or " "
307307 exp = s :match (" ^([eE][-+]?%d+)" , begin + # integer + # frac ) or " "
308- ending = s :match (" ^([\t ]*)" , begin + # integer + # frac + # exp ) or " "
308+ local ending = s :match (" ^([\t ]*)" , begin + # integer + # frac + # exp ) or " "
309309 m = integer .. frac .. exp .. ending
310310 end
311311 end
312312 if m and begin + # m == _end then
313- res = tonumber (integer .. frac .. exp )
313+ local res = tonumber (integer .. frac .. exp )
314314 return res , _end
315315 end
316316
@@ -397,7 +397,7 @@ function HjsonDecoder:new(strict, object_hook, object_pairs_hook)
397397 -- Trivial empty object
398398 if not objectWithoutBraces and ch == " }" then
399399 if type (object_pairs_hook ) == " function" then
400- result = object_pairs_hook (pairs )
400+ local result = object_pairs_hook (pairs )
401401 return result , _end + 1
402402 end
403403 pairs = {}
@@ -440,15 +440,15 @@ function HjsonDecoder:new(strict, object_hook, object_pairs_hook)
440440 ch , _end = getNext (s , _end )
441441 end
442442 if type (object_pairs_hook ) == " function" then
443- result = object_pairs_hook (pairs )
443+ local result = object_pairs_hook (pairs )
444444 return result , _end
445445 end
446446
447- pairs = dict (pairs )
447+ local obj = dict (pairs )
448448 if type (object_hook ) == " function" then
449- pairs = object_hook (pairs )
449+ obj = object_hook (obj )
450450 end
451- return pairs , _end
451+ return obj , _end
452452 end
453453
454454 local function parseArray (state , scanOnce )
0 commit comments