pub trait SendUnsignedTransaction<T, LocalCall>where
    T: SigningTypes + SendTransactionTypes<LocalCall>,{
    type Result;

    // Required method
    fn send_unsigned_transaction<TPayload, F>(
        &self,
        f: F,
        f2: impl Fn(TPayload, <T as SigningTypes>::Signature) -> LocalCall
    ) -> Self::Result
       where F: Fn(&Account<T>) -> TPayload,
             TPayload: SignedPayload<T>;

    // Provided method
    fn submit_unsigned_transaction(
        &self,
        call: LocalCall
    ) -> Option<Result<(), ()>> { ... }
}
Expand description

Submit an unsigned transaction onchain with a signed payload

Required Associated Types§

type Result

A submission result.

Should contain the submission result and the account(s) that signed the payload.

Required Methods§

fn send_unsigned_transaction<TPayload, F>( &self, f: F, f2: impl Fn(TPayload, <T as SigningTypes>::Signature) -> LocalCall ) -> Self::Resultwhere F: Fn(&Account<T>) -> TPayload, TPayload: SignedPayload<T>,

Send an unsigned transaction with a signed payload.

This method takes f and f2 where:

  • f is called for every account and is expected to return a SignedPayload object.
  • f2 is then called with the SignedPayload returned by f and the signature and is expected to return a Call object to be embedded into transaction.

Provided Methods§

fn submit_unsigned_transaction(&self, call: LocalCall) -> Option<Result<(), ()>>

Submits an unsigned call to the transaction pool.

Implementors§

§

impl<T, C, LocalCall> SendUnsignedTransaction<T, LocalCall> for Signer<T, C, ForAll>where T: SigningTypes + SendTransactionTypes<LocalCall>, C: AppCrypto<<T as SigningTypes>::Public, <T as SigningTypes>::Signature>,

§

type Result = Vec<(Account<T>, Result<(), ()>), Global>

§

impl<T, C, LocalCall> SendUnsignedTransaction<T, LocalCall> for Signer<T, C, ForAny>where T: SigningTypes + SendTransactionTypes<LocalCall>, C: AppCrypto<<T as SigningTypes>::Public, <T as SigningTypes>::Signature>,

§

type Result = Option<(Account<T>, Result<(), ()>)>