Current section
Files
Jump to
Current section
Files
src/sprocket@internal@utils@list.erl
-module(sprocket@internal@utils@list).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]).
-export([element_at/3]).
-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/sprocket/internal/utils/list.gleam", 1).
?DOC(false).
-spec element_at(list(MCL), integer(), integer()) -> {ok, MCL} | {error, nil}.
element_at(List, Index, Curr) ->
case List of
[] ->
{error, nil};
[El | Rest] ->
case Curr =:= Index of
true ->
{ok, El};
false ->
element_at(Rest, Index, Curr + 1)
end
end.