rxi
9fbfcde195
Improved error messages when encoding invalid table
2015-08-30 19:17:58 +01:00
rxi
70556ccea5
Added checking for sparseness and mixed key types when encoding array
2015-08-30 19:08:50 +01:00
rxi
3845cef229
Renamed 'keyword' -> 'literal'
2015-08-20 18:54:00 +01:00
rxi
83164fb45c
Removed unused `chr` argument from internal parse funcs
2015-08-19 21:15:32 +01:00
rxi
425c8b3e88
Replaced use of string.sub() + .byte() in parse_string with just .byte()
...
Provides a noticeable speed improvement on both Lua5.2 and LuaJIT 2.0.2
2015-08-19 21:00:40 +01:00
rxi
6fdbd28ed9
Replaced new-line-in-string check with control-char check; tests
2015-08-19 20:00:11 +01:00
rxi
7f823abd2e
Fixed parse_string() to handle "\\" correctly, added tests
2015-08-19 19:28:10 +01:00
rxi
9beca8a5bd
Changed encode_number() number->string conversion method
...
Using Lua5.3, tonumber() will represent the float `1` as "1.0" instead
of "1". Using string.format("%14g, x) `1` is converted to "1" regardless
of whether it's an int or float. All other conversions seem to be
uneffected.
2015-08-15 11:52:07 +01:00
rxi
3cfffd299e
Fixed codepoint_to_utf8()'s string.char usage for Lua5.3
...
Lua5.3 requires that string.char's arguments are integers (<=5.2 and JIT
do not)
2015-08-15 10:56:01 +01:00
rxi
b51b7a53f7
Minor formatting change to parse() func
2015-08-15 10:41:39 +01:00
rxi
89a5a96194
Removed support for numbers starting with "."
2015-08-13 18:33:18 +01:00
rxi
8d14272359
Fixed parse_object() to disallow non-string keys
2015-08-13 18:31:21 +01:00
rxi
10811fbad7
Added support for decoing surrogate pairs
2015-08-12 19:37:03 +01:00
rxi
f36b2f34b7
Removed use of loadstring() in parse_string()
...
Significant performance boost
2015-08-12 18:23:30 +01:00
rxi
157fa12fae
Fixed parse_keyword() from making null -> false
2015-08-11 21:15:49 +01:00
rxi
8b9c820218
Initial commit
2015-08-11 21:08:33 +01:00