Flexflow.Event behaviour (flexflow v0.2.0) View Source
Event
Link to this section Summary
Link to this section Types
Specs
atom_result() :: atom()
Specs
event_result() :: {:ok, atom_result()} | {:error, term()}
Specs
key() :: Flexflow.state_type_or_module() | String.t()
Specs
options() :: Keyword.t()
Specs
t() :: %Flexflow.Event{ __op__: Flexflow.name(), __opts__: options(), context: Flexflow.Context.t(), from: Flexflow.state_key(), module: module(), name: Flexflow.name(), parent_module: module(), results: MapSet.t(atom_result()), to: Flexflow.state_key() }
Link to this section Functions
Specs
init(Flexflow.Process.t()) :: Flexflow.Process.result()
Specs
key(t()) :: {Flexflow.state_key(), Flexflow.state_key()}
Specs
new( {key(), {key(), key()}, options()}, [Flexflow.State.t()], Flexflow.Process.process_tuple() ) :: t()
Specs
Link to this section Callbacks
Specs
default_results() :: [atom_result()]
Specs
graphviz_attribute() :: keyword()
Specs
handle_input(term(), Flexflow.State.t(), Flexflow.Process.t()) :: event_result()
Specs
handle_result( atom_result(), Flexflow.Process.event_type(), term(), Flexflow.State.t(), Flexflow.Process.t() ) :: Flexflow.Process.event_result()
Specs
init(t(), Flexflow.Process.t()) :: Flexflow.Process.result()
Invoked after compile, return :ok if valid
Specs
Specs
name() :: Flexflow.name()
Module name
Specs
validate(t(), Flexflow.Process.t()) :: :ok