View Source Reactor.Dsl.Build protocol (reactor v0.3.4)
A protocol which DSL entities must implement.
Summary
Functions
Build an entity into a Reactor.
Perform any transformation that is needed to make the entity work in the system before building.
Perform any after-compilation verification that is needed to make the entity work.
Types
@type t() :: term()
All the types that implement this protocol.
Functions
Build an entity into a Reactor.
This function is called during conversion of a DSL module into a Reactor struct. This allows extensions to specify the behaviour of how they want to alter the structure of the Reactor.
@spec transform(t(), Spark.Dsl.t()) :: {:ok, Spark.Dsl.t()} | {:error, any()}
Perform any transformation that is needed to make the entity work in the system before building.
See Spark.Dsl.Transformer
for more information.
@spec verify(t(), Spark.Dsl.t()) :: :ok | {:error, any()}
Perform any after-compilation verification that is needed to make the entity work.
See Spark.Dsl.Verifier
for more information.