fuels_signers

Trait Signer

Source
pub trait Signer:
    Debug
    + Send
    + Sync {
    type Error: Error + Send + Sync;

    // Required methods
    fn sign_message<'life0, 'async_trait, S>(
        &'life0 self,
        message: S,
    ) -> Pin<Box<dyn Future<Output = Result<Signature, Self::Error>> + Send + 'async_trait>>
       where S: 'async_trait + Send + Sync + AsRef<[u8]>,
             Self: 'async_trait,
             'life0: 'async_trait;
    fn sign_transaction<'life0, 'life1, 'async_trait, T>(
        &'life0 self,
        message: &'life1 mut T,
    ) -> Pin<Box<dyn Future<Output = Result<Signature, Self::Error>> + Send + 'async_trait>>
       where T: 'async_trait + Transaction + Send,
             Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
    fn address(&self) -> &Bech32Address;
}
Expand description

Trait for signing transactions and messages

Implement this trait to support different signing modes, e.g. Ledger, hosted etc.

Required Associated Types§

Required Methods§

Source

fn sign_message<'life0, 'async_trait, S>( &'life0 self, message: S, ) -> Pin<Box<dyn Future<Output = Result<Signature, Self::Error>> + Send + 'async_trait>>
where S: 'async_trait + Send + Sync + AsRef<[u8]>, Self: 'async_trait, 'life0: 'async_trait,

Signs the hash of the provided message

Source

fn sign_transaction<'life0, 'life1, 'async_trait, T>( &'life0 self, message: &'life1 mut T, ) -> Pin<Box<dyn Future<Output = Result<Signature, Self::Error>> + Send + 'async_trait>>
where T: 'async_trait + Transaction + Send, Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Signs the transaction

Source

fn address(&self) -> &Bech32Address

Returns the signer’s Fuel Address

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§