Packages

Easy to use feature flags for Elixir

Current section

Files

Jump to
flaggy lib flaggy.ex
Raw

lib/flaggy.ex

defmodule Flaggy do
@moduledoc """
Documentation for `Flaggy`.
"""
@doc false
defmacro __using__(opts) do
quote do
@ttl unquote(fetch_option(opts, :ttl))
end
end
defmacro get(key) do
quote do
flag = Flaggy.Adapter.get(unquote(key))
elem(flag, 1)
end
end
defp fetch_option(opts, opt_key) do
case Keyword.fetch(opts, opt_key) do
{:ok, value} -> value
:error -> nil
end
end
end