Quantcast
Channel: Issues with Using AnchorSerialize and AnchorDeserialize Traits - Solana Stack Exchange
Viewing all articles
Browse latest Browse all 2

Issues with Using AnchorSerialize and AnchorDeserialize Traits

$
0
0

so I'm looking to create an instruction that creates an account called GamePot that contains a field called TokenInfo that holds the data for what is meant to be any particular SPL token with a mint account and token account. The idea is that numerous people will be depositing into this account. Sidenote: I also have the issue of properly handling more than two users writing to what is effectively a shared game account via transfers.

#[account]pub struct GamePot {    pub current_total: u64,    pub total_winnings: u64,    pub token_info: TokenInfo,    pub bump: u8}#[derive(AnchorSerialize, AnchorDeserialize)]pub struct TokenInfo {    pub mint_account: Mint,    pub token_account: Token,}

My issue, however, are several errors appearing that all seem to be related to AnchorSerialize/Deserialize and how they're being implemented in TokenInfo.

the trait bound `anchor_spl::token::Mint: anchor_lang::AnchorSerialize` is not satisfied

the trait bound `anchor_spl::token::Token: anchor_lang::AnchorSerialize` is not satisfied

This was Bard's suggestion for TokenInfo...

Unsatisfied trait bounds for TokenInfo:Error: TokenInfo doesn't implement AnchorSerialize and AnchorDeserialize due to the embedded fields Mint and Token not implementing them.Solution:Add the #![feature(trivial_bounds)] attribute to your crate: This enables a feature that allows traits to be implemented for types containing fields that don't implement the trait themselves.Implement AnchorSerialize and AnchorDeserialize for Mint and Token: This might be a more robust solution, but it depends on the specific libraries you're using for these types.

Viewing all articles
Browse latest Browse all 2

Latest Images

Trending Articles





Latest Images