DSL entity for waiting for PubSub events in a Reactor.
The wait_for_event entity wraps BB.Reactor.Step.WaitForEvent with a
cleaner syntax for subscribing to and filtering BB.PubSub messages.
Example
wait_for_event :force_detected do
path [:sensor, :force_torque]
timeout 5000
filter &MyFilters.force_threshold?/1
end
Summary
Types
@type t() :: %BB.Reactor.Dsl.WaitForEvent{ __identifier__: any(), __spark_metadata__: Spark.Dsl.Entity.spark_meta(), arguments: [Reactor.Dsl.Argument.t()], async?: boolean(), description: String.t() | nil, filter: (BB.Message.t() -> boolean()) | nil, guards: [Reactor.Dsl.Where.t() | Reactor.Dsl.Guard.t()], message_types: [module()], name: atom(), path: [atom()], timeout: pos_integer() | :infinity, transform: nil | (any() -> any()) }