-module(embeds@internal). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]). -export([traverse_map/2, 'try'/2]). -file("/home/arkan/Projects/private/embeds/src/embeds/internal.gleam", 11). -spec do_traverse_map( list(INW), fun((INW) -> {ok, INY} | {error, list(INZ)}), list(INY), list(INZ) ) -> {ok, list(INY)} | {error, list(INZ)}. 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("/home/arkan/Projects/private/embeds/src/embeds/internal.gleam", 4). -spec traverse_map(list(INL), fun((INL) -> {ok, INN} | {error, list(INO)})) -> {ok, list(INN)} | {error, list(INO)}. traverse_map(List, Body) -> do_traverse_map(List, Body, [], []). -file("/home/arkan/Projects/private/embeds/src/embeds/internal.gleam", 31). -spec 'try'( {ok, IOJ} | {error, IOK}, fun((IOJ) -> {ok, ION} | {error, list(IOK)}) ) -> {ok, ION} | {error, list(IOK)}. 'try'(Result, F) -> case Result of {ok, Ok} -> F(Ok); {error, Err} -> {error, [Err]} end.