lib/immudb/schemas/permission.ex
defmodule Immudb.Schemas.Permission do
@type t :: %__MODULE__{database: String.t(), permission: integer()}
defstruct database: nil, permission: nil
@spec to_int(atom()) :: integer()
def to_int(:sys_admin) do
255
end
def to_int(:admin) do
254
end
def to_int(:none) do
0
end
def to_int(:read) do
1
end
def to_int(:read_write) do
2
end
@spec to_atom(integer()) :: atom()
def to_atom(255) do
:sys_admin
end
def to_atom(254) do
:admin
end
def to_atom(0) do
:none
end
def to_atom(1) do
:read
end
def to_atom(2) do
:read_write
end
end