Maxine.Machine (Maxine v1.1.1)
The actual machine structure
Link to this section Summary
Link to this section Types
Link to this type
callback()
Specs
callback() :: (from :: state_name(), to :: state_name(), event_name(), event_options() -> %Maxine.Data{app: term(), options: term(), tmp: term()})
Link to this type
callback_map()
Specs
callback_map() :: %{
entering: cb_listing(),
leaving: cb_listing(),
events: cb_listing(),
index: cb_index()
}
Link to this type
cb_index()
Specs
Link to this type
cb_listing()
Specs
Link to this type
cb_name()
Specs
cb_name() :: atom()
Link to this type
event_name()
Specs
event_name() :: atom()
Link to this type
event_options()
Specs
event_options() :: []
Link to this type
groups_map()
Specs
Link to this type
name()
Specs
name() :: state_name() | event_name() | cb_name()
Link to this type
state_name()
Specs
state_name() :: atom()
Specs
t() :: %Maxine.Machine{
callbacks: callback_map(),
groups: groups_map(),
initial: state_name(),
transitions: transition_map()
}
Link to this type
transition_map()
Specs
transition_map() :: %{
required(event_name()) => %{required(state_name()) => state_name()}
}