Skip to main content

ChainWriteTicketOperations

Trait ChainWriteTicketOperations 

pub trait ChainWriteTicketOperations {
    type Error: Error + Send + Sync + 'static;

    // Required method
    fn redeem_ticket<'a, 'async_trait>(
        &'a self,
        ticket: RedeemableTicket,
    ) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn Future<Output = Result<(VerifiedTicket, HashBase<CoreWrapper<Keccak256Core>>), TicketRedeemError<Self::Error>>> + Send + 'a>>, TicketRedeemError<Self::Error>>> + Send + 'async_trait>>
       where 'a: 'async_trait,
             Self: 'async_trait;
}
Expand description

On-chain write operations with tickets.

Required Associated Types§

type Error: Error + Send + Sync + 'static

Required Methods§

fn redeem_ticket<'a, 'async_trait>( &'a self, ticket: RedeemableTicket, ) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn Future<Output = Result<(VerifiedTicket, HashBase<CoreWrapper<Keccak256Core>>), TicketRedeemError<Self::Error>>> + Send + 'a>>, TicketRedeemError<Self::Error>>> + Send + 'async_trait>>
where 'a: 'async_trait, Self: 'async_trait,

Redeems a single ticket on-chain.

The input ticket is always returned as VerifiedTicket, either on success or failure.

Implementations on Foreign Types§

§

impl<'b, T> ChainWriteTicketOperations for &'b T

§

type Error = <T as ChainWriteTicketOperations>::Error

§

fn redeem_ticket<'a, 'async_trait>( &'a self, ticket: RedeemableTicket, ) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn Future<Output = Result<(VerifiedTicket, HashBase<CoreWrapper<Keccak256Core>>), TicketRedeemError<<&'b T as ChainWriteTicketOperations>::Error>>> + Send + 'a>>, TicketRedeemError<<&'b T as ChainWriteTicketOperations>::Error>>> + Send + 'async_trait>>
where 'a: 'async_trait, &'b T: 'async_trait,

§

impl<T> ChainWriteTicketOperations for Box<T>

§

type Error = <T as ChainWriteTicketOperations>::Error

§

fn redeem_ticket<'a, 'async_trait>( &'a self, ticket: RedeemableTicket, ) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn Future<Output = Result<(VerifiedTicket, HashBase<CoreWrapper<Keccak256Core>>), TicketRedeemError<<Box<T> as ChainWriteTicketOperations>::Error>>> + Send + 'a>>, TicketRedeemError<<Box<T> as ChainWriteTicketOperations>::Error>>> + Send + 'async_trait>>
where 'a: 'async_trait, Box<T>: 'async_trait,

§

impl<T> ChainWriteTicketOperations for Arc<T>

§

type Error = <T as ChainWriteTicketOperations>::Error

§

fn redeem_ticket<'a, 'async_trait>( &'a self, ticket: RedeemableTicket, ) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn Future<Output = Result<(VerifiedTicket, HashBase<CoreWrapper<Keccak256Core>>), TicketRedeemError<<Arc<T> as ChainWriteTicketOperations>::Error>>> + Send + 'a>>, TicketRedeemError<<Arc<T> as ChainWriteTicketOperations>::Error>>> + Send + 'async_trait>>
where 'a: 'async_trait, Arc<T>: 'async_trait,

Implementors§

Source§

impl<B, C, P> ChainWriteTicketOperations for HoprBlockchainConnector<C, B, P, P::TxRequest>
where B: Backend + Send + Sync + 'static, C: BlokliTransactionClient + BlokliQueryClient + Send + Sync + 'static, P: PayloadGenerator + Send + Sync + 'static, P::TxRequest: Send + Sync + 'static,