Trait ethbind_gen::Generator
source · pub trait Generator {
// Required methods
fn begin<R: RuntimeBinder>(
&mut self,
runtime_binder: &mut R,
name: &str
) -> Result<()>;
fn end<R: RuntimeBinder>(
&mut self,
runtime_binder: &mut R,
name: &str
) -> Result<()>;
fn generate_fn<R: RuntimeBinder>(
&mut self,
runtime_binder: &mut R,
fn: &Function
) -> Result<()>;
fn generate_deploy<R: RuntimeBinder>(
&mut self,
runtime_binder: &mut R,
contructor: &Constructor,
deploy_bytes: &str
) -> Result<()>;
fn generate_event<R: RuntimeBinder>(
&mut self,
runtime_binder: &mut R,
event: &Event
) -> Result<()>;
fn generate_error<R: RuntimeBinder>(
&mut self,
runtime_binder: &mut R,
error: &Error
) -> Result<()>;
fn finalize<R: RuntimeBinder>(
self,
runtime_binder: &mut R
) -> Result<Vec<Contract>>;
}Expand description
Programming language code generator supported by Ethbind.
The implementation must support multi-round generation process.
Required Methods§
sourcefn begin<R: RuntimeBinder>(
&mut self,
runtime_binder: &mut R,
name: &str
) -> Result<()>
fn begin<R: RuntimeBinder>( &mut self, runtime_binder: &mut R, name: &str ) -> Result<()>
Generatable or Executor call this fn to start a new contract generation round.
sourcefn end<R: RuntimeBinder>(
&mut self,
runtime_binder: &mut R,
name: &str
) -> Result<()>
fn end<R: RuntimeBinder>( &mut self, runtime_binder: &mut R, name: &str ) -> Result<()>
Close current generation contract round.
sourcefn generate_fn<R: RuntimeBinder>(
&mut self,
runtime_binder: &mut R,
fn: &Function
) -> Result<()>
fn generate_fn<R: RuntimeBinder>( &mut self, runtime_binder: &mut R, fn: &Function ) -> Result<()>
Generate contract method ,call this fn after call begin at least once.
sourcefn generate_deploy<R: RuntimeBinder>(
&mut self,
runtime_binder: &mut R,
contructor: &Constructor,
deploy_bytes: &str
) -> Result<()>
fn generate_deploy<R: RuntimeBinder>( &mut self, runtime_binder: &mut R, contructor: &Constructor, deploy_bytes: &str ) -> Result<()>
Generate contract deploy method ,call this fn after call begin at least once.
sourcefn generate_event<R: RuntimeBinder>(
&mut self,
runtime_binder: &mut R,
event: &Event
) -> Result<()>
fn generate_event<R: RuntimeBinder>( &mut self, runtime_binder: &mut R, event: &Event ) -> Result<()>
Generate event handle interface ,call this fn after call begin at least once.
sourcefn generate_error<R: RuntimeBinder>(
&mut self,
runtime_binder: &mut R,
error: &Error
) -> Result<()>
fn generate_error<R: RuntimeBinder>( &mut self, runtime_binder: &mut R, error: &Error ) -> Result<()>
Generate error handle interface ,call this fn after call begin at least once.