dash_sdk::platform::transition::put_identity

Trait PutIdentity

source
pub trait PutIdentity<S: Signer>: Waitable {
    // Required methods
    fn put_to_platform<'life0, 'life1, 'life2, 'life3, 'async_trait>(
        &'life0 self,
        sdk: &'life1 Sdk,
        asset_lock_proof: AssetLockProof,
        asset_lock_proof_private_key: &'life2 PrivateKey,
        signer: &'life3 S,
        settings: Option<PutSettings>,
    ) -> Pin<Box<dyn Future<Output = Result<StateTransition, Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait,
             'life2: 'async_trait,
             'life3: 'async_trait;
    fn put_to_platform_and_wait_for_response<'life0, 'life1, 'life2, 'life3, 'async_trait>(
        &'life0 self,
        sdk: &'life1 Sdk,
        asset_lock_proof: AssetLockProof,
        asset_lock_proof_private_key: &'life2 PrivateKey,
        signer: &'life3 S,
        settings: Option<PutSettings>,
    ) -> Pin<Box<dyn Future<Output = Result<Self, Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait,
             'life2: 'async_trait,
             'life3: 'async_trait;
}
Expand description

A trait for putting an identity to platform

Required Methods§

source

fn put_to_platform<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, sdk: &'life1 Sdk, asset_lock_proof: AssetLockProof, asset_lock_proof_private_key: &'life2 PrivateKey, signer: &'life3 S, settings: Option<PutSettings>, ) -> Pin<Box<dyn Future<Output = Result<StateTransition, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait,

Puts an identity on platform.

TODO: Discuss if it should not actually consume self, since it is no longer valid (eg. identity id is changed)

source

fn put_to_platform_and_wait_for_response<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, sdk: &'life1 Sdk, asset_lock_proof: AssetLockProof, asset_lock_proof_private_key: &'life2 PrivateKey, signer: &'life3 S, settings: Option<PutSettings>, ) -> Pin<Box<dyn Future<Output = Result<Self, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait,

Puts an identity on platform and waits for the confirmation proof.

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<S: Signer> PutIdentity<S> for Identity