Merge branch 'develop' into vtwopointoh
This commit is contained in:
commit
3bb65e9bab
12 changed files with 104 additions and 45 deletions
|
@ -33,7 +33,7 @@
|
|||
-export([decoder/3, resume/6]).
|
||||
|
||||
|
||||
-spec decoder(Handler::module(), State::any(), Config::jsx:config()) -> jsx:decoder().
|
||||
-spec decoder(Handler::module(), State::any(), Config::list()) -> jsx:decoder().
|
||||
|
||||
decoder(Handler, State, Config) ->
|
||||
fun(JSON) -> start(JSON, {Handler, Handler:init(State)}, [], jsx_config:parse_config(Config)) end.
|
||||
|
@ -48,7 +48,7 @@ decoder(Handler, State, Config) ->
|
|||
Acc::any(),
|
||||
Stack::list(atom()),
|
||||
Config::jsx:config()
|
||||
) -> jsx:decoder().
|
||||
) -> jsx:decoder() | {incomplete, jsx:decoder()}.
|
||||
|
||||
resume(Rest, State, Handler, Acc, Stack, Config) ->
|
||||
case State of
|
||||
|
@ -671,12 +671,12 @@ unescape(<<$u, $d, A, B, C, ?rsolidus, $u, W, X, Y, Z, Rest/binary>>, Handler, A
|
|||
false -> string(Rest, Handler, acc_seq(Acc, [16#fffd, 16#fffd]), Stack, Config)
|
||||
end;
|
||||
unescape(<<$u, $d, A, B, C, ?rsolidus, Rest/binary>>, Handler, Acc, Stack, Config)
|
||||
when (A == $8 orelse A == $9 orelse A == $a orelse A == $b) andalso
|
||||
when (A == $8 orelse A == $9 orelse A == $a orelse A == $b),
|
||||
?is_hex(B), ?is_hex(C)
|
||||
->
|
||||
incomplete(string, <<?rsolidus, $u, $d, A, B, C, ?rsolidus, Rest/binary>>, Handler, Acc, Stack, Config);
|
||||
unescape(<<$u, $d, A, B, C>>, Handler, Acc, Stack, Config)
|
||||
when (A == $8 orelse A == $9 orelse A == $a orelse A == $b) andalso
|
||||
when (A == $8 orelse A == $9 orelse A == $a orelse A == $b),
|
||||
?is_hex(B), ?is_hex(C)
|
||||
->
|
||||
incomplete(string, <<?rsolidus, $u, $d, A, B, C>>, Handler, Acc, Stack, Config);
|
||||
|
@ -1687,4 +1687,4 @@ custom_incomplete_handler_test_() ->
|
|||
].
|
||||
|
||||
|
||||
-endif.
|
||||
-endif.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue