Current section

Files

Jump to
nimiq_rpc src nimiq_rpc@primitives@staker.erl
Raw

src/nimiq_rpc@primitives@staker.erl

-module(nimiq_rpc@primitives@staker).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/nimiq_rpc/primitives/staker.gleam").
-export([decoder/0]).
-export_type([staker/0]).
-type staker() :: {staker,
binary(),
integer(),
binary(),
integer(),
gleam@option:option(integer()),
integer()}.
-file("src/nimiq_rpc/primitives/staker.gleam", 15).
-spec decoder() -> gleam@dynamic@decode:decoder(staker()).
decoder() ->
gleam@dynamic@decode:field(
<<"address"/utf8>>,
{decoder, fun gleam@dynamic@decode:decode_string/1},
fun(Address) ->
gleam@dynamic@decode:field(
<<"balance"/utf8>>,
{decoder, fun gleam@dynamic@decode:decode_int/1},
fun(Balance) ->
gleam@dynamic@decode:field(
<<"delegation"/utf8>>,
{decoder, fun gleam@dynamic@decode:decode_string/1},
fun(Delegation) ->
gleam@dynamic@decode:field(
<<"inactiveBalance"/utf8>>,
{decoder, fun gleam@dynamic@decode:decode_int/1},
fun(Inactive_balance) ->
gleam@dynamic@decode:field(
<<"inactiveFrom"/utf8>>,
gleam@dynamic@decode:optional(
{decoder,
fun gleam@dynamic@decode:decode_int/1}
),
fun(Inactive_from) ->
gleam@dynamic@decode:field(
<<"retiredBalance"/utf8>>,
{decoder,
fun gleam@dynamic@decode:decode_int/1},
fun(Retired_balance) ->
gleam@dynamic@decode:success(
{staker,
Address,
Balance,
Delegation,
Inactive_balance,
Inactive_from,
Retired_balance}
)
end
)
end
)
end
)
end
)
end
)
end
).