Packages

Programatically spawn and manage server infrastructure

Current section

Files

Jump to
illithid lib models region.ex
Raw

lib/models/region.ex

defmodule Illithid.Models.Region do
@moduledoc false
@required_keys [:name, :slug, :available]
@enforce_keys @required_keys
defstruct @required_keys
@type t :: %__MODULE__{name: String.t(), slug: String.t(), available: boolean()}
@spec new(name :: String.t(), slug :: String.t(), available :: boolean()) :: t()
def new(name, slug, available)
when is_bitstring(name) and is_bitstring(slug) and is_boolean(available) do
%__MODULE__{
name: name,
slug: slug,
available: available
}
end
end