handle jsx:encode([{key,value}])
This commit is contained in:
parent
c7fcfbcb51
commit
216b97df55
1 changed files with 7 additions and 0 deletions
|
@ -68,6 +68,8 @@ value(Int, {Handler, State}, _Config) when is_integer(Int) ->
|
||||||
value(Literal, {Handler, State}, _Config)
|
value(Literal, {Handler, State}, _Config)
|
||||||
when Literal == true; Literal == false; Literal == null ->
|
when Literal == true; Literal == false; Literal == null ->
|
||||||
Handler:handle_event({literal, Literal}, State);
|
Handler:handle_event({literal, Literal}, State);
|
||||||
|
value(String, {Handler, State}, Config) when is_atom(String) ->
|
||||||
|
Handler:handle_event({string, clean_string(atom_to_binary(String,latin1), {Handler, State}, Config)}, State);
|
||||||
value([{}], {Handler, State}, _Config) ->
|
value([{}], {Handler, State}, _Config) ->
|
||||||
Handler:handle_event(end_object, Handler:handle_event(start_object, State));
|
Handler:handle_event(end_object, Handler:handle_event(start_object, State));
|
||||||
value([], {Handler, State}, _Config) ->
|
value([], {Handler, State}, _Config) ->
|
||||||
|
@ -163,6 +165,7 @@ encode(Term, Config) -> start(Term, {jsx, []}, jsx_config:parse_config(Config)).
|
||||||
pre_encoders_test_() ->
|
pre_encoders_test_() ->
|
||||||
Term = [
|
Term = [
|
||||||
{<<"object">>, [
|
{<<"object">>, [
|
||||||
|
{atomkey, atomvalue},
|
||||||
{<<"literals">>, [true, false, null]},
|
{<<"literals">>, [true, false, null]},
|
||||||
{<<"strings">>, [<<"foo">>, <<"bar">>, <<"baz">>]},
|
{<<"strings">>, [<<"foo">>, <<"bar">>, <<"baz">>]},
|
||||||
{<<"numbers">>, [1, 1.0, 1.0e0]}
|
{<<"numbers">>, [1, 1.0, 1.0e0]}
|
||||||
|
@ -173,6 +176,7 @@ pre_encoders_test_() ->
|
||||||
[
|
[
|
||||||
start_object,
|
start_object,
|
||||||
{key, <<"object">>}, start_object,
|
{key, <<"object">>}, start_object,
|
||||||
|
{key, <<"atomkey">>}, {string, <<"atomvalue">>},
|
||||||
{key, <<"literals">>}, start_array,
|
{key, <<"literals">>}, start_array,
|
||||||
{literal, true}, {literal, false}, {literal, null},
|
{literal, true}, {literal, false}, {literal, null},
|
||||||
end_array,
|
end_array,
|
||||||
|
@ -192,6 +196,7 @@ pre_encoders_test_() ->
|
||||||
[
|
[
|
||||||
start_object,
|
start_object,
|
||||||
{key, <<"object">>}, start_object,
|
{key, <<"object">>}, start_object,
|
||||||
|
{key, <<"atomkey">>}, {string, <<"atomvalue">>},
|
||||||
{key, <<"literals">>}, start_array, end_array,
|
{key, <<"literals">>}, start_array, end_array,
|
||||||
{key, <<"strings">>}, start_array, end_array,
|
{key, <<"strings">>}, start_array, end_array,
|
||||||
{key, <<"numbers">>}, start_array, end_array,
|
{key, <<"numbers">>}, start_array, end_array,
|
||||||
|
@ -213,6 +218,7 @@ pre_encoders_test_() ->
|
||||||
[
|
[
|
||||||
start_object,
|
start_object,
|
||||||
{key, <<"object">>}, start_object,
|
{key, <<"object">>}, start_object,
|
||||||
|
{key, <<"atomkey">>}, {literal, false},
|
||||||
{key, <<"literals">>}, start_array,
|
{key, <<"literals">>}, start_array,
|
||||||
{literal, false}, {literal, false}, {literal, false},
|
{literal, false}, {literal, false}, {literal, false},
|
||||||
end_array,
|
end_array,
|
||||||
|
@ -232,6 +238,7 @@ pre_encoders_test_() ->
|
||||||
[
|
[
|
||||||
start_object,
|
start_object,
|
||||||
{key, <<"object">>}, start_object,
|
{key, <<"object">>}, start_object,
|
||||||
|
{key, <<"atomkey">>}, {string, <<"atomvalue">>},
|
||||||
{key, <<"literals">>}, start_array,
|
{key, <<"literals">>}, start_array,
|
||||||
{string, <<"true">>}, {string, <<"false">>}, {string, <<"null">>},
|
{string, <<"true">>}, {string, <<"false">>}, {string, <<"null">>},
|
||||||
end_array,
|
end_array,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue