Skip to main content

Launcher

Trait Launcher 

Source
pub trait Launcher<C, Ext>
where C: ChainSpecParser, Ext: Args + Debug,
{ // Required method fn entrypoint( self, builder: WithLaunchContext<NodeBuilder<DatabaseEnv, C::ChainSpec>>, builder_args: Ext, ) -> impl Future<Output = Result<()>>; }
Expand description

A trait for launching a reth node with custom configuration strategies.

This trait allows defining node configuration through various object types rather than just functions. By implementing this trait on your own structures, you can:

  • Create flexible configurations that connect necessary components without creating separate closures
  • Take advantage of decomposition to break complex configurations into a series of methods
  • Encapsulate configuration logic in dedicated types with their own state and behavior
  • Reuse configuration patterns across different parts of your application

Required Methods§

Source

fn entrypoint( self, builder: WithLaunchContext<NodeBuilder<DatabaseEnv, C::ChainSpec>>, builder_args: Ext, ) -> impl Future<Output = Result<()>>

Entry point for launching a node with custom configuration.

Consumes self to use pre-configured state, takes a builder and arguments, and returns an async future.

§Arguments
  • builder - Node builder with launch context
  • builder_args - Extension arguments for configuration

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl<C, Ext, F> Launcher<C, Ext> for FnLauncher<F>
where C: ChainSpecParser, Ext: Args + Debug, F: AsyncFnOnce(WithLaunchContext<NodeBuilder<DatabaseEnv, C::ChainSpec>>, Ext) -> Result<()>,