Current section
Files
Jump to
Current section
Files
src/nimiq_rpc@internal@fiber@src@fiber@request.erl
-module(nimiq_rpc@internal@fiber@src@fiber@request).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/nimiq_rpc/internal/fiber/src/fiber/request.gleam").
-export([new/1, with_params/2, with_decoder/2]).
-export_type([request/1]).
-if(?OTP_RELEASE >= 27).
-define(MODULEDOC(Str), -moduledoc(Str)).
-define(DOC(Str), -doc(Str)).
-else.
-define(MODULEDOC(Str), -compile([])).
-define(DOC(Str), -compile([])).
-endif.
?MODULEDOC(false).
-type request(IJM) :: {request,
binary(),
gleam@option:option(gleam@json:json()),
gleam@dynamic@decode:decoder(IJM),
gleam@option:option(nimiq_rpc@internal@fiber@src@fiber@message:id())}.
-file("src/nimiq_rpc/internal/fiber/src/fiber/request.gleam", 17).
?DOC(false).
-spec new(binary()) -> request(gleam@dynamic:dynamic_()).
new(Method) ->
{request,
Method,
none,
{decoder, fun gleam@dynamic@decode:decode_dynamic/1},
none}.
-file("src/nimiq_rpc/internal/fiber/src/fiber/request.gleam", 26).
?DOC(false).
-spec with_params(request(IJO), gleam@json:json()) -> request(IJO).
with_params(Request, Params) ->
{request,
erlang:element(2, Request),
{some, Params},
erlang:element(4, Request),
erlang:element(5, Request)}.
-file("src/nimiq_rpc/internal/fiber/src/fiber/request.gleam", 30).
?DOC(false).
-spec with_decoder(request(any()), gleam@dynamic@decode:decoder(IJT)) -> request(IJT).
with_decoder(Request, Decoder) ->
{request,
erlang:element(2, Request),
erlang:element(3, Request),
Decoder,
erlang:element(5, Request)}.