pub trait NativeVault {
    // Required methods
    fn create<Y, E>(
        resource_address: ResourceAddress,
        api: &mut Y
    ) -> Result<Vault, E>
       where E: Debug + ScryptoDecode,
             Y: ClientApi<E>;
    fn put<Y, E>(&mut self, bucket: Bucket, api: &mut Y) -> Result<(), E>
       where E: Debug + ScryptoDecode,
             Y: ClientApi<E>;
    fn take<Y, E>(&mut self, amount: Decimal, api: &mut Y) -> Result<Bucket, E>
       where E: Debug + ScryptoDecode,
             Y: ClientApi<E>;
    fn take_advanced<Y, E>(
        &mut self,
        amount: Decimal,
        withdraw_strategy: WithdrawStrategy,
        api: &mut Y
    ) -> Result<Bucket, E>
       where E: Debug + ScryptoDecode,
             Y: ClientApi<E>;
    fn take_all<Y, E>(&mut self, api: &mut Y) -> Result<Bucket, E>
       where E: Debug + ScryptoDecode,
             Y: ClientApi<E>;
    fn amount<Y, E>(&self, api: &mut Y) -> Result<Decimal, E>
       where E: Debug + ScryptoDecode,
             Y: ClientApi<E>;
    fn resource_address<Y, E>(&self, api: &mut Y) -> Result<ResourceAddress, E>
       where E: Debug + ScryptoDecode,
             Y: ClientApi<E>;
    fn burn<Y, E>(&mut self, amount: Decimal, api: &mut Y) -> Result<(), E>
       where E: Debug + ScryptoDecode,
             Y: ClientApi<E>;
}

Required Methods§

fn create<Y, E>( resource_address: ResourceAddress, api: &mut Y ) -> Result<Vault, E>
where E: Debug + ScryptoDecode, Y: ClientApi<E>,

fn put<Y, E>(&mut self, bucket: Bucket, api: &mut Y) -> Result<(), E>
where E: Debug + ScryptoDecode, Y: ClientApi<E>,

fn take<Y, E>(&mut self, amount: Decimal, api: &mut Y) -> Result<Bucket, E>
where E: Debug + ScryptoDecode, Y: ClientApi<E>,

fn take_advanced<Y, E>( &mut self, amount: Decimal, withdraw_strategy: WithdrawStrategy, api: &mut Y ) -> Result<Bucket, E>
where E: Debug + ScryptoDecode, Y: ClientApi<E>,

fn take_all<Y, E>(&mut self, api: &mut Y) -> Result<Bucket, E>
where E: Debug + ScryptoDecode, Y: ClientApi<E>,

fn amount<Y, E>(&self, api: &mut Y) -> Result<Decimal, E>
where E: Debug + ScryptoDecode, Y: ClientApi<E>,

fn resource_address<Y, E>(&self, api: &mut Y) -> Result<ResourceAddress, E>
where E: Debug + ScryptoDecode, Y: ClientApi<E>,

fn burn<Y, E>(&mut self, amount: Decimal, api: &mut Y) -> Result<(), E>
where E: Debug + ScryptoDecode, Y: ClientApi<E>,

Object Safety§

This trait is not object safe.

Implementors§