Trait StoreOps

Source
pub trait StoreOps<C> {
    // Required methods
    fn initialize_store<S: Signer + 'static>(
        &self,
        key: &str,
        authority: Option<S>,
        receiver: Option<S>,
        holding: Option<S>,
    ) -> TransactionBuilder<'_, C>;
    fn transfer_store_authority(
        &self,
        store: &Pubkey,
        new_authority: &Pubkey,
    ) -> TransactionBuilder<'_, C>;
    fn accept_store_authority(
        &self,
        store: &Pubkey,
    ) -> TransactionBuilder<'_, C>;
    fn transfer_receiver(
        &self,
        store: &Pubkey,
        new_receiver: &Pubkey,
    ) -> TransactionBuilder<'_, C>;
    fn set_token_map(
        &self,
        store: &Pubkey,
        token_map: &Pubkey,
    ) -> TransactionBuilder<'_, C>;
    fn insert_factor(
        &self,
        store: &Pubkey,
        key: FactorKey,
        factor: Factor,
    ) -> TransactionBuilder<'_, C>;
}
Expand description

Data Store management for GMSOL.

Required Methods§

Source

fn initialize_store<S: Signer + 'static>( &self, key: &str, authority: Option<S>, receiver: Option<S>, holding: Option<S>, ) -> TransactionBuilder<'_, C>

Initialize Store account.

Source

fn transfer_store_authority( &self, store: &Pubkey, new_authority: &Pubkey, ) -> TransactionBuilder<'_, C>

Transfer store authority.

Source

fn accept_store_authority(&self, store: &Pubkey) -> TransactionBuilder<'_, C>

Accept store authority.

Source

fn transfer_receiver( &self, store: &Pubkey, new_receiver: &Pubkey, ) -> TransactionBuilder<'_, C>

Transfer receiver.

Source

fn set_token_map( &self, store: &Pubkey, token_map: &Pubkey, ) -> TransactionBuilder<'_, C>

Set new token map.

Source

fn insert_factor( &self, store: &Pubkey, key: FactorKey, factor: Factor, ) -> TransactionBuilder<'_, C>

Insert factor.

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§

Source§

impl<C, S> StoreOps<C> for Client<C>
where C: Deref<Target = S> + Clone, S: Signer,