Packages
joken
2.0.0-rc1
2.6.2
2.6.1
2.6.0
2.5.0
2.4.1
2.4.0
2.3.0
2.2.0
2.1.0
2.0.1
2.0.0
2.0.0-rc3
2.0.0-rc2
2.0.0-rc1
2.0.0-rc0
1.5.0
1.4.1
1.4.0
1.3.2
1.3.1
1.3.0
1.2.2
1.2.1
1.2.0
1.1.1
1.1.0
1.0.1
1.0.0
0.16.1
0.16.0
0.15.0
0.14.1
0.14.0
0.13.1
0.13.0
0.12.0
0.11.0
0.10.1
0.10.0
0.8.1
0.8.0
0.7.0
0.6.2
0.6.1
0.6.0
0.5.0
0.1.0
JWT (JSON Web Token) library for Elixir.
Current section
Files
Jump to
Current section
Files
lib/joken/claim.ex
defmodule Joken.Claim do
@moduledoc """
Structure for a dynamic claim. It is used for holding functions that generate
and validate claims.
"""
@type t :: %__MODULE__{
generate: fun() | nil,
validate: fun() | nil,
options: list()
}
# We have options here for customizing error messages and other possible extras
defstruct generate: nil,
validate: nil,
options: []
@doc false
def __generate_claim__({key, %__MODULE__{generate: gen_fun}}, acc)
when is_function(gen_fun) and is_binary(key) and is_map(acc) do
case Map.has_key?(acc, key) do
true ->
acc
_ ->
Map.put(acc, key, gen_fun.())
end
end
end