Packages

Provides DSL and functions for defining and handling `Ecto.Schema` based FSM

Current section

Files

Jump to
ecto_fsm lib ecto fsm schema state.ex
Raw

lib/ecto/fsm/schema/state.ex

defprotocol Ecto.FSM.Schema.State do
@moduledoc """
Defines a protocol for accessing Ecto schema status field
"""
@doc """
Return schema's status field
"""
@spec field(t) :: atom
def field(state)
end
defimpl Ecto.FSM.Schema.State, for: Ecto.Changeset do
def field(%Ecto.Changeset{data: data}), do: Ecto.FSM.Schema.State.field(data)
end