changed end_of_json to end_json
This commit is contained in:
parent
e245d8aa92
commit
813058e2fb
7 changed files with 19 additions and 19 deletions
|
@ -87,7 +87,7 @@ event({Type, Value}, [Array|Stack]) when is_list(Array) ->
|
||||||
|
|
||||||
event(reset, _) ->
|
event(reset, _) ->
|
||||||
[];
|
[];
|
||||||
event(end_of_json, [Stack]) ->
|
event(end_json, [Stack]) ->
|
||||||
Stack.
|
Stack.
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -90,7 +90,7 @@ prettify({Type, Value}, {Acc, Indent, Level, key}) ->
|
||||||
|
|
||||||
prettify(reset, {_, Indent, _, _}) ->
|
prettify(reset, {_, Indent, _, _}) ->
|
||||||
{[], Indent, 0, new};
|
{[], Indent, 0, new};
|
||||||
prettify(end_of_json, {Acc, _, _, _}) ->
|
prettify(end_json, {Acc, _, _, _}) ->
|
||||||
Acc.
|
Acc.
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -60,7 +60,7 @@ event({string, String}, capture) ->
|
||||||
|
|
||||||
event(reset, _) ->
|
event(reset, _) ->
|
||||||
0;
|
0;
|
||||||
event(end_of_json, _) ->
|
event(end_json, _) ->
|
||||||
throw(not_found);
|
throw(not_found);
|
||||||
|
|
||||||
event(_, Level) ->
|
event(_, Level) ->
|
||||||
|
|
|
@ -55,7 +55,7 @@ parser() ->
|
||||||
parser([]).
|
parser([]).
|
||||||
|
|
||||||
parser(Opts) ->
|
parser(Opts) ->
|
||||||
F = fun(end_of_json, State) -> lists:reverse(State)
|
F = fun(end_json, State) -> lists:reverse(State)
|
||||||
; (reset, _State) -> []
|
; (reset, _State) -> []
|
||||||
; (Event, State) -> [Event] ++ State
|
; (Event, State) -> [Event] ++ State
|
||||||
end,
|
end,
|
||||||
|
|
|
@ -35,9 +35,9 @@
|
||||||
%% callbacks to our handler are roughly equivalent to a fold over the events, incremental
|
%% callbacks to our handler are roughly equivalent to a fold over the events, incremental
|
||||||
%% rather than all at once.
|
%% rather than all at once.
|
||||||
|
|
||||||
fold(end_of_json, {F, State}) ->
|
fold(end_json, {F, State}) ->
|
||||||
F(end_of_json, State);
|
F(end_json, State);
|
||||||
fold(Event, {F, State}) when is_function(F) ->
|
fold(Event, {F, State}) ->
|
||||||
{F, F(Event, State)}.
|
{F, F(Event, State)}.
|
||||||
|
|
||||||
|
|
||||||
|
@ -94,11 +94,11 @@ maybe_done(<<?comma/?encoding, Rest/binary>>, [array|_] = Stack, Callbacks, Opts
|
||||||
maybe_done(<<?solidus/?encoding, Rest/binary>>, Stack, Callbacks, ?comments_enabled(Opts)) ->
|
maybe_done(<<?solidus/?encoding, Rest/binary>>, Stack, Callbacks, ?comments_enabled(Opts)) ->
|
||||||
maybe_comment(Rest, fun(Resume) -> maybe_done(Resume, Stack, Callbacks, Opts) end);
|
maybe_comment(Rest, fun(Resume) -> maybe_done(Resume, Stack, Callbacks, Opts) end);
|
||||||
maybe_done(Bin, [], Callbacks, ?stream_mode(Opts)) ->
|
maybe_done(Bin, [], Callbacks, ?stream_mode(Opts)) ->
|
||||||
{fold(end_of_json, Callbacks), fun(Stream) ->
|
{fold(end_json, Callbacks), fun(Stream) ->
|
||||||
start(<<Bin/binary, Stream/binary>>, [], fold(reset, Callbacks), Opts)
|
start(<<Bin/binary, Stream/binary>>, [], fold(reset, Callbacks), Opts)
|
||||||
end};
|
end};
|
||||||
maybe_done(<<>>, [], Callbacks, Opts) ->
|
maybe_done(<<>>, [], Callbacks, Opts) ->
|
||||||
{fold(end_of_json, Callbacks), fun(Stream) -> maybe_done(Stream, [], Callbacks, Opts) end};
|
{fold(end_json, Callbacks), fun(Stream) -> maybe_done(Stream, [], Callbacks, Opts) end};
|
||||||
maybe_done(Bin, Stack, Callbacks, Opts) ->
|
maybe_done(Bin, Stack, Callbacks, Opts) ->
|
||||||
case byte_size(Bin) >= ?symbol_size of
|
case byte_size(Bin) >= ?symbol_size of
|
||||||
true -> {error, badjson}
|
true -> {error, badjson}
|
||||||
|
@ -433,11 +433,11 @@ zero(<<?solidus/?encoding, Rest/binary>>, Stack, Callbacks, ?comments_enabled(Op
|
||||||
maybe_comment(Rest, fun(Resume) -> zero(Resume, Stack, Callbacks, Opts, Acc) end);
|
maybe_comment(Rest, fun(Resume) -> zero(Resume, Stack, Callbacks, Opts, Acc) end);
|
||||||
zero(Bin, [], Callbacks, ?stream_mode(Opts), Acc) ->
|
zero(Bin, [], Callbacks, ?stream_mode(Opts), Acc) ->
|
||||||
CB = fold({integer, lists:reverse(Acc)}, Callbacks),
|
CB = fold({integer, lists:reverse(Acc)}, Callbacks),
|
||||||
{fold(end_of_json, CB), fun(Stream) ->
|
{fold(end_json, CB), fun(Stream) ->
|
||||||
start(<<Bin/binary, Stream/binary>>, [], fold(reset, CB), Opts)
|
start(<<Bin/binary, Stream/binary>>, [], fold(reset, CB), Opts)
|
||||||
end};
|
end};
|
||||||
zero(<<>>, [], Callbacks, Opts, Acc) ->
|
zero(<<>>, [], Callbacks, Opts, Acc) ->
|
||||||
{fold(end_of_json, fold({integer, lists:reverse(Acc)}, Callbacks)),
|
{fold(end_json, fold({integer, lists:reverse(Acc)}, Callbacks)),
|
||||||
fun(Stream) -> zero(Stream, [], Callbacks, Opts, Acc) end};
|
fun(Stream) -> zero(Stream, [], Callbacks, Opts, Acc) end};
|
||||||
zero(Bin, Stack, Callbacks, Opts, Acc) ->
|
zero(Bin, Stack, Callbacks, Opts, Acc) ->
|
||||||
case byte_size(Bin) >= ?symbol_size of
|
case byte_size(Bin) >= ?symbol_size of
|
||||||
|
@ -473,11 +473,11 @@ integer(<<?solidus/?encoding, Rest/binary>>, Stack, Callbacks, ?comments_enabled
|
||||||
maybe_comment(Rest, fun(Resume) -> integer(Resume, Stack, Callbacks, Opts, Acc) end);
|
maybe_comment(Rest, fun(Resume) -> integer(Resume, Stack, Callbacks, Opts, Acc) end);
|
||||||
integer(Bin, [], Callbacks, ?stream_mode(Opts), Acc) ->
|
integer(Bin, [], Callbacks, ?stream_mode(Opts), Acc) ->
|
||||||
CB = fold({integer, lists:reverse(Acc)}, Callbacks),
|
CB = fold({integer, lists:reverse(Acc)}, Callbacks),
|
||||||
{fold(end_of_json, CB), fun(Stream) ->
|
{fold(end_json, CB), fun(Stream) ->
|
||||||
start(<<Bin/binary, Stream/binary>>, [], fold(reset, CB), Opts)
|
start(<<Bin/binary, Stream/binary>>, [], fold(reset, CB), Opts)
|
||||||
end};
|
end};
|
||||||
integer(<<>>, [], Callbacks, Opts, Acc) ->
|
integer(<<>>, [], Callbacks, Opts, Acc) ->
|
||||||
{fold(end_of_json, fold({integer, lists:reverse(Acc)}, Callbacks)),
|
{fold(end_json, fold({integer, lists:reverse(Acc)}, Callbacks)),
|
||||||
fun(Stream) -> integer(Stream, [], Callbacks, Opts, Acc) end};
|
fun(Stream) -> integer(Stream, [], Callbacks, Opts, Acc) end};
|
||||||
integer(Bin, Stack, Callbacks, Opts, Acc) ->
|
integer(Bin, Stack, Callbacks, Opts, Acc) ->
|
||||||
case byte_size(Bin) >= ?symbol_size of
|
case byte_size(Bin) >= ?symbol_size of
|
||||||
|
@ -525,11 +525,11 @@ decimal(<<?solidus/?encoding, Rest/binary>>, Stack, Callbacks, ?comments_enabled
|
||||||
maybe_comment(Rest, fun(Resume) -> decimal(Resume, Stack, Callbacks, Opts, Acc) end);
|
maybe_comment(Rest, fun(Resume) -> decimal(Resume, Stack, Callbacks, Opts, Acc) end);
|
||||||
decimal(Bin, [], Callbacks, ?stream_mode(Opts), Acc) ->
|
decimal(Bin, [], Callbacks, ?stream_mode(Opts), Acc) ->
|
||||||
CB = fold({float, lists:reverse(Acc)}, Callbacks),
|
CB = fold({float, lists:reverse(Acc)}, Callbacks),
|
||||||
{fold(end_of_json, CB), fun(Stream) ->
|
{fold(end_json, CB), fun(Stream) ->
|
||||||
start(<<Bin/binary, Stream/binary>>, [], fold(reset, CB), Opts)
|
start(<<Bin/binary, Stream/binary>>, [], fold(reset, CB), Opts)
|
||||||
end};
|
end};
|
||||||
decimal(<<>>, [], Callbacks, Opts, Acc) ->
|
decimal(<<>>, [], Callbacks, Opts, Acc) ->
|
||||||
{fold(end_of_json, fold({float, lists:reverse(Acc)}, Callbacks)),
|
{fold(end_json, fold({float, lists:reverse(Acc)}, Callbacks)),
|
||||||
fun(Stream) -> decimal(Stream, [], Callbacks, Opts, Acc) end};
|
fun(Stream) -> decimal(Stream, [], Callbacks, Opts, Acc) end};
|
||||||
decimal(Bin, Stack, Callbacks, Opts, Acc) ->
|
decimal(Bin, Stack, Callbacks, Opts, Acc) ->
|
||||||
case byte_size(Bin) >= ?symbol_size of
|
case byte_size(Bin) >= ?symbol_size of
|
||||||
|
@ -585,11 +585,11 @@ exp(<<S/?encoding, Rest/binary>>, Stack, Callbacks, Opts, Acc) when ?is_whitespa
|
||||||
maybe_done(Rest, Stack, fold({float, lists:reverse(Acc)}, Callbacks), Opts);
|
maybe_done(Rest, Stack, fold({float, lists:reverse(Acc)}, Callbacks), Opts);
|
||||||
exp(Bin, [], Callbacks, ?stream_mode(Opts), Acc) ->
|
exp(Bin, [], Callbacks, ?stream_mode(Opts), Acc) ->
|
||||||
CB = fold({float, lists:reverse(Acc)}, Callbacks),
|
CB = fold({float, lists:reverse(Acc)}, Callbacks),
|
||||||
{fold(end_of_json, CB), fun(Stream) ->
|
{fold(end_json, CB), fun(Stream) ->
|
||||||
start(<<Bin/binary, Stream/binary>>, [], fold(reset, CB), Opts)
|
start(<<Bin/binary, Stream/binary>>, [], fold(reset, CB), Opts)
|
||||||
end};
|
end};
|
||||||
exp(<<>>, [], Callbacks, Opts, Acc) ->
|
exp(<<>>, [], Callbacks, Opts, Acc) ->
|
||||||
{fold(end_of_json, fold({float, lists:reverse(Acc)}, Callbacks)),
|
{fold(end_json, fold({float, lists:reverse(Acc)}, Callbacks)),
|
||||||
fun(Stream) -> exp(Stream, [], Callbacks, Opts, Acc) end};
|
fun(Stream) -> exp(Stream, [], Callbacks, Opts, Acc) end};
|
||||||
exp(Bin, Stack, Callbacks, Opts, Acc) ->
|
exp(Bin, Stack, Callbacks, Opts, Acc) ->
|
||||||
case byte_size(Bin) >= ?symbol_size of
|
case byte_size(Bin) >= ?symbol_size of
|
||||||
|
|
|
@ -43,7 +43,7 @@
|
||||||
| end_object
|
| end_object
|
||||||
| start_array
|
| start_array
|
||||||
| end_array
|
| end_array
|
||||||
| end_of_json
|
| end_json
|
||||||
| reset
|
| reset
|
||||||
| {key, unicode_string()}
|
| {key, unicode_string()}
|
||||||
| {string, unicode_string()}
|
| {string, unicode_string()}
|
||||||
|
|
|
@ -41,7 +41,7 @@ test(Dir) ->
|
||||||
decoder(Flags) ->
|
decoder(Flags) ->
|
||||||
jsx:decoder({jsx_test, test_event, []}, Flags).
|
jsx:decoder({jsx_test, test_event, []}, Flags).
|
||||||
|
|
||||||
test_event(end_of_json, Acc) ->
|
test_event(end_json, Acc) ->
|
||||||
lists:reverse(Acc);
|
lists:reverse(Acc);
|
||||||
test_event(Event, Acc) ->
|
test_event(Event, Acc) ->
|
||||||
[Event] ++ Acc.
|
[Event] ++ Acc.
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue