-module(barnacle@local_epmd). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]). -export([discover_nodes/0]). -file("/home/isaac/repos/pevensie/barnacle/src/barnacle/local_epmd.gleam", 10). -spec get_hostname() -> binary(). get_hostname() -> Host = begin _pipe = erlang:node(), _pipe@1 = gleam_erlang_ffi:identity(_pipe), erlang:atom_to_binary(_pipe@1) end, _assert_subject = gleam@string:split(Host, <<"@"/utf8>>), [_, Hostname] = case _assert_subject of [_, _] -> _assert_subject; _assert_fail -> erlang:error(#{gleam_error => let_assert, message => <<"Pattern match failed, no pattern matched the value."/utf8>>, value => _assert_fail, module => <<"barnacle/local_epmd"/utf8>>, function => <<"get_hostname"/utf8>>, line => 16}) end, Hostname. -file("/home/isaac/repos/pevensie/barnacle/src/barnacle/local_epmd.gleam", 22). -spec discover_nodes() -> {ok, list(gleam@erlang@atom:atom_())} | {error, nil}. discover_nodes() -> Hostname = get_hostname(), _pipe = barnacle_ffi:list_local_nodes(), gleam@result:map( _pipe, fun(_capture) -> gleam@list:map( _capture, fun(N) -> _pipe@1 = (<<<>/binary, Hostname/binary>>), erlang:binary_to_atom(_pipe@1) end ) end ).