diff options
author | Louis Pilfold <louis@lpil.uk> | 2022-01-01 19:29:19 +0000 |
---|---|---|
committer | Louis Pilfold <louis@lpil.uk> | 2022-01-01 19:29:19 +0000 |
commit | 850d26eaaf1c3de9bed14b249b406b19e3b437a4 (patch) | |
tree | b18ac86a30d2e497d33261d2aebe3d7a8e460aeb /src/gleam_json_ffi.erl | |
parent | ee6fed818f9925df00df129873c6858618d0c92a (diff) | |
download | gleam_json-850d26eaaf1c3de9bed14b249b406b19e3b437a4.tar.gz gleam_json-850d26eaaf1c3de9bed14b249b406b19e3b437a4.zip |
Extra layer of indirection
Diffstat (limited to 'src/gleam_json_ffi.erl')
-rw-r--r-- | src/gleam_json_ffi.erl | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/gleam_json_ffi.erl b/src/gleam_json_ffi.erl index 94c3cc5..c33f87f 100644 --- a/src/gleam_json_ffi.erl +++ b/src/gleam_json_ffi.erl @@ -1,6 +1,12 @@ -module(gleam_json_ffi). --export([json_to_iodata/1, json_to_string/1]). +-export([ + decode/1, json_to_iodata/1, json_to_string/1, int/1, float/1, string/1, + bool/1, null/0, array/1, object/1 +]). + +decode(Json) -> + thoas:decode(Json). json_to_iodata(Json) -> Json. @@ -9,3 +15,11 @@ json_to_string(Json) when is_binary(Json) -> Json; json_to_string(Json) when is_list(Json) -> list_to_binary(Json). + +null() -> thoas_encode:null(). +int(X) -> thoas_encode:integer(X). +bool(X) -> thoas_encode:boolean(X). +float(X) -> thoas_encode:float(X). +string(X) -> thoas_encode:string(X). +object(X) -> thoas_encode:non_recursive_object(X). +array(X) -> thoas_encode:non_recursive_array(X). |