MscmpSystEnums.Types (mscmp_syst_enums v0.1.0)

Types used by the Enums service module.

Summary

Types

Identification of each unique Enum Functional Type that can be associated with an Enum.

A map definition describing what specific key/value pairs are available for passing as SystEnumFunctionalTypes changeset parameters.

Record ID type for the Enum Item record.

Identification of each unique Enum Value that can be associated with an Enum.

A map definition describing what specific key/value pairs are available for passing as SystEnumItems changeset parameters.

Identification of each unique Enum managed by the Enums Service instance.

A map definition describing what specific key/value pairs are available for passing as SystEnums changeset parameters.

The valid forms of service name acceptable to identify the Enumerations service.

Types

enum_functional_type_name()

@type enum_functional_type_name() :: String.t()

Identification of each unique Enum Functional Type that can be associated with an Enum.

enum_functional_type_params()

@type enum_functional_type_params() :: %{
  optional(:enum_id) => Ecto.UUID.t(),
  optional(:internal_name) => enum_functional_type_name(),
  optional(:display_name) => String.t(),
  optional(:user_description) => String.t()
}

A map definition describing what specific key/value pairs are available for passing as SystEnumFunctionalTypes changeset parameters.

enum_item_id()

@type enum_item_id() :: binary()

Record ID type for the Enum Item record.

enum_item_name()

@type enum_item_name() :: String.t()

Identification of each unique Enum Value that can be associated with an Enum.

enum_item_params()

@type enum_item_params() :: %{
  optional(:enum_id) => Ecto.UUID.t(),
  optional(:functional_type_id) => Ecto.UUID.t(),
  optional(:functional_type_name) => enum_functional_type_name(),
  optional(:internal_name) => enum_item_name(),
  optional(:display_name) => String.t(),
  optional(:user_description) => String.t(),
  optional(:user_options) => map()
}

A map definition describing what specific key/value pairs are available for passing as SystEnumItems changeset parameters.

enum_name()

@type enum_name() :: String.t()

Identification of each unique Enum managed by the Enums Service instance.

enum_params()

@type enum_params() :: %{
  optional(:internal_name) => enum_name(),
  optional(:display_name) => String.t(),
  optional(:user_description) => String.t(),
  optional(:enum_items) => [enum_item_params()],
  optional(:functional_types) => [enum_functional_type_params()]
}

A map definition describing what specific key/value pairs are available for passing as SystEnums changeset parameters.

service_name()

@type service_name() :: GenServer.name() | nil

The valid forms of service name acceptable to identify the Enumerations service.

When the service name is an atom, it is assumed to be a registered name using the default Elixir name registration process. When the service name is a String, you must also identify a valid registry with which the name will be registered. Finally, if the value is nil, the service will be started without a name and you are responsible for using the returned PID for later accesses of the service.