pub trait LightClientService:
Send
+ Sync
+ 'static {
// Required methods
fn get_light_client_leaf_proof<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientLeafProofRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientLeafProofResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_light_client_header_proof<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientHeaderProofRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientHeaderProofResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_light_client_stake_table<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientStakeTableRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientStakeTableResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_light_client_payload_proof<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientPayloadProofRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientPayloadProofResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_light_client_payload_proof_range<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientPayloadProofRangeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientPayloadProofRangeResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_light_client_payload_proof_ranges<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientPayloadProofRangesRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientPayloadProofRangeResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_light_client_namespace_proof<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientNamespaceProofRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientNamespaceProofResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_light_client_namespace_proof_range<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientNamespaceProofRangeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientNamespaceProofRangeResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_light_client_namespaces_proof_range<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientNamespacesProofRangeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientNamespacesProofRangeResponse>, 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 LightClientServiceServer.
Required Methods§
Sourcefn get_light_client_leaf_proof<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientLeafProofRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientLeafProofResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_light_client_leaf_proof<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientLeafProofRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientLeafProofResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get a leaf with a proof that it is finalized
Sourcefn get_light_client_header_proof<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientHeaderProofRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientHeaderProofResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_light_client_header_proof<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientHeaderProofRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientHeaderProofResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get a header with a proof of membership under a trusted block merkle tree root
Sourcefn get_light_client_stake_table<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientStakeTableRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientStakeTableResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_light_client_stake_table<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientStakeTableRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientStakeTableResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get the stake table events that turn the previous epoch’s stake table into this epoch’s
Sourcefn get_light_client_payload_proof<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientPayloadProofRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientPayloadProofResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_light_client_payload_proof<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientPayloadProofRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientPayloadProofResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get a block payload with the data to check it against its header
Sourcefn get_light_client_payload_proof_range<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientPayloadProofRangeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientPayloadProofRangeResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_light_client_payload_proof_range<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientPayloadProofRangeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientPayloadProofRangeResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get payload proofs for a range of blocks
Sourcefn get_light_client_payload_proof_ranges<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientPayloadProofRangesRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientPayloadProofRangeResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_light_client_payload_proof_ranges<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientPayloadProofRangesRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientPayloadProofRangeResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get payload proofs for several ranges of blocks in one request
Sourcefn get_light_client_namespace_proof<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientNamespaceProofRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientNamespaceProofResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_light_client_namespace_proof<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientNamespaceProofRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientNamespaceProofResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get a proof of one namespace’s transactions in a block, checked against its header
Sourcefn get_light_client_namespace_proof_range<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientNamespaceProofRangeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientNamespaceProofRangeResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_light_client_namespace_proof_range<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientNamespaceProofRangeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientNamespaceProofRangeResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get one namespace’s proofs for a range of blocks
Sourcefn get_light_client_namespaces_proof_range<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientNamespacesProofRangeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientNamespacesProofRangeResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_light_client_namespaces_proof_range<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLightClientNamespacesProofRangeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LightClientNamespacesProofRangeResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get several namespaces’ proofs for a range of blocks
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".