Current section
Files
Jump to
Current section
Files
src/gladvent.erl
-module(gladvent).
-compile(no_auto_import).
-export([main/0, execute/1]).
-spec main() -> nil.
main() ->
case cmd@run:build_runners_from_days_dir() of
{ok, Runners} ->
execute(Runners);
{error, Err} ->
print_snag_and_halt(Err)
end.
-spec execute(
gleam@map:map_(integer(), fun((binary()) -> {integer(), integer()}))
) -> nil.
execute(Runners) ->
Commands = begin
_pipe = glint:new(),
_pipe@1 = cmd@run:register_command(_pipe, Runners),
cmd@new:register_command(_pipe@1)
end,
Args = gleam@erlang:start_arguments(),
case begin
_pipe@2 = Commands,
glint:execute(_pipe@2, Args)
end of
{ok, {out, {ok, Output}}} ->
_pipe@3 = Output,
_pipe@4 = gleam@string:join(_pipe@3, <<"\n\n"/utf8>>),
gleam@io:println(_pipe@4);
{ok, {help, Help}} ->
gleam@io:println(Help);
{ok, {out, {error, Err}}} ->
print_snag_and_halt(Err);
{error, Err} ->
print_snag_and_halt(Err)
end.
-spec print_snag_and_halt(snag:snag()) -> nil.
print_snag_and_halt(Err) ->
_pipe = Err,
_pipe@1 = snag:pretty_print(_pipe),
gleam@io:println(_pipe@1),
erlang:halt(1).