pub trait Vm: Send + Sync + 'static {
Show 34 methods // Required methods fn initialize<'life0, 'async_trait>( &'life0 self, request: Request<InitializeRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<InitializeResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn set_state<'life0, 'async_trait>( &'life0 self, request: Request<SetStateRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<SetStateResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn shutdown<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn create_handlers<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<CreateHandlersResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn create_static_handlers<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<CreateStaticHandlersResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn connected<'life0, 'async_trait>( &'life0 self, request: Request<ConnectedRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn disconnected<'life0, 'async_trait>( &'life0 self, request: Request<DisconnectedRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn build_block<'life0, 'async_trait>( &'life0 self, request: Request<BuildBlockRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<BuildBlockResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn parse_block<'life0, 'async_trait>( &'life0 self, request: Request<ParseBlockRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<ParseBlockResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_block<'life0, 'async_trait>( &'life0 self, request: Request<GetBlockRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<GetBlockResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn set_preference<'life0, 'async_trait>( &'life0 self, request: Request<SetPreferenceRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn health<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<HealthResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn version<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<VersionResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn app_request<'life0, 'async_trait>( &'life0 self, request: Request<AppRequestMsg> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn app_request_failed<'life0, 'async_trait>( &'life0 self, request: Request<AppRequestFailedMsg> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn app_response<'life0, 'async_trait>( &'life0 self, request: Request<AppResponseMsg> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn app_gossip<'life0, 'async_trait>( &'life0 self, request: Request<AppGossipMsg> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn gather<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<GatherResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn cross_chain_app_request<'life0, 'async_trait>( &'life0 self, request: Request<CrossChainAppRequestMsg> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn cross_chain_app_request_failed<'life0, 'async_trait>( &'life0 self, request: Request<CrossChainAppRequestFailedMsg> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn cross_chain_app_response<'life0, 'async_trait>( &'life0 self, request: Request<CrossChainAppResponseMsg> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_ancestors<'life0, 'async_trait>( &'life0 self, request: Request<GetAncestorsRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<GetAncestorsResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn batched_parse_block<'life0, 'async_trait>( &'life0 self, request: Request<BatchedParseBlockRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<BatchedParseBlockResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn verify_height_index<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<VerifyHeightIndexResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_block_id_at_height<'life0, 'async_trait>( &'life0 self, request: Request<GetBlockIdAtHeightRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<GetBlockIdAtHeightResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn state_sync_enabled<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<StateSyncEnabledResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_ongoing_sync_state_summary<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<GetOngoingSyncStateSummaryResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_last_state_summary<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<GetLastStateSummaryResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn parse_state_summary<'life0, 'async_trait>( &'life0 self, request: Request<ParseStateSummaryRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<ParseStateSummaryResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_state_summary<'life0, 'async_trait>( &'life0 self, request: Request<GetStateSummaryRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<GetStateSummaryResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn block_verify<'life0, 'async_trait>( &'life0 self, request: Request<BlockVerifyRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<BlockVerifyResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn block_accept<'life0, 'async_trait>( &'life0 self, request: Request<BlockAcceptRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn block_reject<'life0, 'async_trait>( &'life0 self, request: Request<BlockRejectRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn state_summary_accept<'life0, 'async_trait>( &'life0 self, request: Request<StateSummaryAcceptRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<StateSummaryAcceptResponse>, Status>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait;
}
Expand description

Generated trait containing gRPC methods that should be implemented for use with VmServer.

Required Methods§

source

fn initialize<'life0, 'async_trait>( &'life0 self, request: Request<InitializeRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<InitializeResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn set_state<'life0, 'async_trait>( &'life0 self, request: Request<SetStateRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<SetStateResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn shutdown<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn create_handlers<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<CreateHandlersResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn create_static_handlers<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<CreateStaticHandlersResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn connected<'life0, 'async_trait>( &'life0 self, request: Request<ConnectedRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn disconnected<'life0, 'async_trait>( &'life0 self, request: Request<DisconnectedRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn build_block<'life0, 'async_trait>( &'life0 self, request: Request<BuildBlockRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<BuildBlockResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn parse_block<'life0, 'async_trait>( &'life0 self, request: Request<ParseBlockRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<ParseBlockResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn get_block<'life0, 'async_trait>( &'life0 self, request: Request<GetBlockRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<GetBlockResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn set_preference<'life0, 'async_trait>( &'life0 self, request: Request<SetPreferenceRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn health<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<HealthResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn version<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<VersionResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn app_request<'life0, 'async_trait>( &'life0 self, request: Request<AppRequestMsg> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn app_request_failed<'life0, 'async_trait>( &'life0 self, request: Request<AppRequestFailedMsg> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn app_response<'life0, 'async_trait>( &'life0 self, request: Request<AppResponseMsg> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn app_gossip<'life0, 'async_trait>( &'life0 self, request: Request<AppGossipMsg> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn gather<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<GatherResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn cross_chain_app_request<'life0, 'async_trait>( &'life0 self, request: Request<CrossChainAppRequestMsg> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn cross_chain_app_request_failed<'life0, 'async_trait>( &'life0 self, request: Request<CrossChainAppRequestFailedMsg> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn cross_chain_app_response<'life0, 'async_trait>( &'life0 self, request: Request<CrossChainAppResponseMsg> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn get_ancestors<'life0, 'async_trait>( &'life0 self, request: Request<GetAncestorsRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<GetAncestorsResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn batched_parse_block<'life0, 'async_trait>( &'life0 self, request: Request<BatchedParseBlockRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<BatchedParseBlockResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn verify_height_index<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<VerifyHeightIndexResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn get_block_id_at_height<'life0, 'async_trait>( &'life0 self, request: Request<GetBlockIdAtHeightRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<GetBlockIdAtHeightResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn state_sync_enabled<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<StateSyncEnabledResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn get_ongoing_sync_state_summary<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<GetOngoingSyncStateSummaryResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn get_last_state_summary<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<GetLastStateSummaryResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn parse_state_summary<'life0, 'async_trait>( &'life0 self, request: Request<ParseStateSummaryRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<ParseStateSummaryResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn get_state_summary<'life0, 'async_trait>( &'life0 self, request: Request<GetStateSummaryRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<GetStateSummaryResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn block_verify<'life0, 'async_trait>( &'life0 self, request: Request<BlockVerifyRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<BlockVerifyResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn block_accept<'life0, 'async_trait>( &'life0 self, request: Request<BlockAcceptRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn block_reject<'life0, 'async_trait>( &'life0 self, request: Request<BlockRejectRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

source

fn state_summary_accept<'life0, 'async_trait>( &'life0 self, request: Request<StateSummaryAcceptRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<StateSummaryAcceptResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

Implementors§

source§

impl<V> Vm for Server<V>where V: ChainVm<DatabaseManager = DatabaseManager, AppSender = AppSenderClient> + Send + Sync + 'static,