pub struct SolanaBridge {
pub rpc_url: String,
pub program_id: Pubkey,
/* private fields */
}Fields§
§rpc_url: String§program_id: PubkeyImplementations§
Source§impl SolanaBridge
impl SolanaBridge
Trait Implementations§
Source§impl ChainBridge for SolanaBridge
impl ChainBridge for SolanaBridge
fn submit_proof<'life0, 'life1, 'async_trait>(
&'life0 self,
proof: &'life1 ProofPayload,
) -> Pin<Box<dyn Future<Output = Result<TxSignature, TribeError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
SolanaBridge: 'async_trait,
fn query_miner<'life0, 'life1, 'async_trait>(
&'life0 self,
pubkey: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<MinerAccount>, TribeError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
SolanaBridge: 'async_trait,
Source§fn register_miner<'life0, 'life1, 'async_trait>(
&'life0 self,
miner_pubkey: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<TxSignature, TribeError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
SolanaBridge: 'async_trait,
fn register_miner<'life0, 'life1, 'async_trait>(
&'life0 self,
miner_pubkey: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<TxSignature, TribeError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
SolanaBridge: 'async_trait,
Register a miner on-chain (creates MinerAccount PDA). Used for auto-registration of new devices/miners.
fn get_current_difficulty<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<u64, TribeError>> + Send + 'async_trait>>where
'life0: 'async_trait,
SolanaBridge: 'async_trait,
fn request_swap<'life0, 'async_trait>(
&'life0 self,
from_token: Token,
to_token: Token,
amount: u64,
) -> Pin<Box<dyn Future<Output = Result<TxSignature, TribeError>> + Send + 'async_trait>>where
'life0: 'async_trait,
SolanaBridge: 'async_trait,
Auto Trait Implementations§
impl Freeze for SolanaBridge
impl RefUnwindSafe for SolanaBridge
impl Send for SolanaBridge
impl Sync for SolanaBridge
impl Unpin for SolanaBridge
impl UnsafeUnpin for SolanaBridge
impl UnwindSafe for SolanaBridge
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more