-module(deriv@example@unnested). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]). -export([decoder_unnested_unnested/0, decoder_unnested/0, encode_unnested/1]). -export_type([unnested/0]). -type unnested() :: {unnested, integer()}. -file("src/deriv/example/unnested.gleam", 14). -spec decoder_unnested_unnested() -> decode:decoder(unnested()). decoder_unnested_unnested() -> _pipe = decode:into( begin decode:parameter(fun(Unnested) -> {unnested, Unnested} end) end ), decode:subfield( _pipe, [<<"foo"/utf8>>, <<"bar"/utf8>>, <<"baz"/utf8>>], {decoder, fun gleam@dynamic:int/1} ). -file("src/deriv/example/unnested.gleam", 10). -spec decoder_unnested() -> decode:decoder(unnested()). decoder_unnested() -> decode:one_of([decoder_unnested_unnested()]). -file("src/deriv/example/unnested.gleam", 22). -spec encode_unnested(unnested()) -> gleam@json:json(). encode_unnested(Value) -> case Value of {unnested, _} = Value@1 -> gleam@json:object( [{<<"foo"/utf8>>, gleam@json:object( [{<<"bar"/utf8>>, gleam@json:object( [{<<"baz"/utf8>>, gleam@json:int( erlang:element(2, Value@1) )}] )}] )}] ) end.