pub trait UserOps<C> {
// Required methods
fn prepare_user(&self, store: &Pubkey) -> Result<TransactionBuilder<'_, C>>;
fn initialize_referral_code(
&self,
store: &Pubkey,
code: ReferralCodeBytes,
) -> Result<TransactionBuilder<'_, C>>;
fn set_referrer(
&self,
store: &Pubkey,
code: ReferralCodeBytes,
hint_referrer: Option<Pubkey>,
) -> impl Future<Output = Result<TransactionBuilder<'_, C>>>;
fn transfer_referral_code(
&self,
store: &Pubkey,
receiver: &Pubkey,
hint_code: Option<ReferralCodeBytes>,
) -> impl Future<Output = Result<TransactionBuilder<'_, C>>>;
fn cancel_referral_code_transfer(
&self,
store: &Pubkey,
hint_code: Option<ReferralCodeBytes>,
) -> impl Future<Output = Result<TransactionBuilder<'_, C>>>;
fn accept_referral_code(
&self,
store: &Pubkey,
code: ReferralCodeBytes,
hint_owner: Option<Pubkey>,
) -> impl Future<Output = Result<TransactionBuilder<'_, C>>>;
}
Expand description
User Account Operations.
Required Methods§
Sourcefn prepare_user(&self, store: &Pubkey) -> Result<TransactionBuilder<'_, C>>
fn prepare_user(&self, store: &Pubkey) -> Result<TransactionBuilder<'_, C>>
Prepare User.
Sourcefn initialize_referral_code(
&self,
store: &Pubkey,
code: ReferralCodeBytes,
) -> Result<TransactionBuilder<'_, C>>
fn initialize_referral_code( &self, store: &Pubkey, code: ReferralCodeBytes, ) -> Result<TransactionBuilder<'_, C>>
Initialize Referral Code.
Sourcefn set_referrer(
&self,
store: &Pubkey,
code: ReferralCodeBytes,
hint_referrer: Option<Pubkey>,
) -> impl Future<Output = Result<TransactionBuilder<'_, C>>>
fn set_referrer( &self, store: &Pubkey, code: ReferralCodeBytes, hint_referrer: Option<Pubkey>, ) -> impl Future<Output = Result<TransactionBuilder<'_, C>>>
Set referrer.
Sourcefn transfer_referral_code(
&self,
store: &Pubkey,
receiver: &Pubkey,
hint_code: Option<ReferralCodeBytes>,
) -> impl Future<Output = Result<TransactionBuilder<'_, C>>>
fn transfer_referral_code( &self, store: &Pubkey, receiver: &Pubkey, hint_code: Option<ReferralCodeBytes>, ) -> impl Future<Output = Result<TransactionBuilder<'_, C>>>
Transfer referral code.
Sourcefn cancel_referral_code_transfer(
&self,
store: &Pubkey,
hint_code: Option<ReferralCodeBytes>,
) -> impl Future<Output = Result<TransactionBuilder<'_, C>>>
fn cancel_referral_code_transfer( &self, store: &Pubkey, hint_code: Option<ReferralCodeBytes>, ) -> impl Future<Output = Result<TransactionBuilder<'_, C>>>
Cancel referral code transfer.
Sourcefn accept_referral_code(
&self,
store: &Pubkey,
code: ReferralCodeBytes,
hint_owner: Option<Pubkey>,
) -> impl Future<Output = Result<TransactionBuilder<'_, C>>>
fn accept_referral_code( &self, store: &Pubkey, code: ReferralCodeBytes, hint_owner: Option<Pubkey>, ) -> impl Future<Output = Result<TransactionBuilder<'_, C>>>
Accept referral code transfer.
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.