Packages

Generate Gleam modules based on static assets and environment variables.

Current section

Files

Jump to
embeds src embeds@internal.erl
Raw

src/embeds@internal.erl

-module(embeds@internal).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/embeds/internal.gleam").
-export([traverse_map/2, 'try'/2]).
-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).
-file("src/embeds/internal.gleam", 11).
?DOC(false).
-spec do_traverse_map(
list(GOC),
fun((GOC) -> {ok, GOE} | {error, list(GOF)}),
list(GOE),
list(GOF)
) -> {ok, list(GOE)} | {error, list(GOF)}.
do_traverse_map(List, Body, Oks, Errs) ->
case List of
[] ->
case Errs of
[] ->
{ok, lists:reverse(Oks)};
_ ->
{error, lists:reverse(Errs)}
end;
[Head | Tail] ->
case Body(Head) of
{ok, Ok} ->
do_traverse_map(Tail, Body, [Ok | Oks], Errs);
{error, Err} ->
do_traverse_map(Tail, Body, Oks, lists:append(Err, Errs))
end
end.
-file("src/embeds/internal.gleam", 4).
?DOC(false).
-spec traverse_map(list(GNR), fun((GNR) -> {ok, GNT} | {error, list(GNU)})) -> {ok,
list(GNT)} |
{error, list(GNU)}.
traverse_map(List, Body) ->
do_traverse_map(List, Body, [], []).
-file("src/embeds/internal.gleam", 31).
?DOC(false).
-spec 'try'(
{ok, GOP} | {error, GOQ},
fun((GOP) -> {ok, GOT} | {error, list(GOQ)})
) -> {ok, GOT} | {error, list(GOQ)}.
'try'(Result, F) ->
case Result of
{ok, Ok} ->
F(Ok);
{error, Err} ->
{error, [Err]}
end.