Module json
Data Types
array_finish_fun()
array_finish_fun() = fun((ArrayAcc::term(), OldAcc::term()) -> {term(), term()})
array_push_fun()
array_push_fun() = fun((Value::term(), Acc::term()) -> NewAcc::term())
array_start_fun()
array_start_fun() = fun((Acc::term()) -> ArrayAcc::term())
continuation_state()
abstract datatype: continuation_state()
decode_value()
decode_value() = integer() | float() | boolean() | null | binary() | [decode_value()] | #{binary() => decode_value()}
decoders()
decoders() = #{array_start => array_start_fun(), array_push => array_push_fun(), array_finish => array_finish_fun(), object_start => object_start_fun(), object_push => object_push_fun(), object_finish => object_finish_fun(), float => from_binary_fun(), integer => from_binary_fun(), string => from_binary_fun(), null => term()}
encode_map()
encode_map(Value) = #{binary() | atom() | integer() => Value}
encode_value()
encode_value() = integer() | float() | boolean() | null | binary() | atom() | [encode_value()] | encode_map(encode_value())
encoder()
encoder() = fun((term(), encoder()) -> iodata())
from_binary_fun()
from_binary_fun() = fun((binary()) -> term())
object_finish_fun()
object_finish_fun() = fun((ObjectAcc::term(), OldAcc::term()) -> {term(), term()})
object_push_fun()
object_push_fun() = fun((Key::term(), Value::term(), Acc::term()) -> NewAcc::term())
object_start_fun()
object_start_fun() = fun((Acc::term()) -> ObjectAcc::term())
Function Index
Function Details
decode/1
decode(Bin::binary()) -> decode_value()
decode/3
decode(Bin::binary(), Acc::term(), Decoders::decoders()) -> {Result::term(), Acc::term(), binary()}
decode_continue/2
decode_continue(NewData::binary() | end_of_input, State::continuation_state()) -> {Result::term(), Acc::term(), binary()} | {continue, continuation_state()}
decode_start/3
decode_start(Bin::binary(), Acc::term(), Decoders::decoders()) -> {Result::term(), Acc::term(), binary()} | {continue, continuation_state()}
encode/1
encode(Term::encode_value()) -> iodata()
encode/2
encode(Term::term(), Encoder::encoder()) -> iodata()
encode_atom/2
encode_atom(Atom::atom(), Encoder::encoder()) -> iodata()
encode_binary/1
encode_binary(Bin::binary()) -> iodata()
encode_binary_escape_all/1
encode_binary_escape_all(Bin::binary()) -> iodata()
encode_float/1
encode_float(Float::float()) -> iodata()
encode_integer/1
encode_integer(Int::integer()) -> iodata()
encode_key_value_list/2
encode_key_value_list(List::[{term(), term()}], Encoder::encoder()) -> iodata()
encode_key_value_list_checked/2
encode_key_value_list_checked(List::[{term(), term()}], Encoder::encoder()) -> iodata()
encode_list/2
encode_list(T::list(), Encoder::encoder()) -> iodata()
encode_map/2
encode_map(Map::encode_map(term()), Encoder::encoder()) -> iodata()
encode_map_checked/2
encode_map_checked(Map::map(), Encoder::encoder()) -> iodata()
encode_value/2
encode_value(Atom::term(), Encoder::encoder()) -> iodata()