pub trait Vm: Send + Sync + 'static {
Show 34 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§

Implementors§