Packages
git_hub_actions
0.3.0
0.4.2
0.4.1
0.4.0
0.3.17
0.3.16
0.3.15
0.3.14
0.3.13
0.3.11
0.3.10
0.3.9
0.3.8
0.3.7
0.3.6
0.3.5
0.3.4
0.3.3
0.3.2
0.3.1
0.3.0
0.2.27
0.2.26
0.2.25
0.2.24
0.2.23
0.2.22
0.2.21
0.2.20
0.2.19
0.2.18
0.2.17
0.2.16
0.2.15
0.2.14
0.2.13
0.2.12
0.2.11
0.2.10
0.2.9
0.2.8
0.2.7
0.2.6
0.2.5
0.2.4
0.2.3
0.2.2
0.2.1
0.2.0
0.1.11
0.1.10
0.1.9
0.1.8
0.1.7
0.1.6
0.1.5
0.1.4
0.1.3
0.1.2
0.1.1
0.1.0
A little tool to write GitHub actions in Elixir
Current section
Files
Jump to
Current section
Files
lib/git_hub_actions/access.ex
defmodule GitHubActions.Access do
@moduledoc false
def get(keywords, key, default) when is_atom(key) do
Keyword.get(keywords, key, default)
end
def get(keywords, [key], default) when is_atom(key) do
Keyword.get(keywords, key, default)
end
def get(keywords, [key | keys], default) when is_atom(key) do
case Keyword.fetch(keywords, key) do
{:ok, next} -> get(next, keys, default)
:error -> default
end
end
def fetch(keywords, key) when is_atom(key) do
Keyword.fetch(keywords, key)
end
def fetch(keywords, [key]) when is_atom(key) do
Keyword.fetch(keywords, key)
end
def fetch(keywords, [key | keys]) when is_atom(key) do
with {:ok, next} <- Keyword.fetch(keywords, key) do
fetch(next, keys)
end
end
def fetch!(keywords, key) when is_atom(key) do
Keyword.fetch!(keywords, key)
end
def fetch!(keywords, [key]) when is_atom(key) do
Keyword.fetch!(keywords, key)
end
def fetch!(keywords, [key | keys]) when is_atom(key) do
keywords |> Keyword.fetch!(key) |> fetch!(keys)
end
end