carbon_system_program_decoder/instructions/
upgrade_nonce_account.rs

1use carbon_core::{borsh, CarbonDeserialize};
2#[derive(
3    CarbonDeserialize, Debug, serde::Serialize, serde::Deserialize, PartialEq, Eq, Clone, Hash,
4)]
5#[carbon(discriminator = "0x0C")]
6pub struct UpgradeNonceAccount;
7
8pub struct UpgradeNonceAccountAccounts {
9    pub nonce_account: solana_sdk::pubkey::Pubkey,
10}
11
12impl carbon_core::deserialize::ArrangeAccounts for UpgradeNonceAccount {
13    type ArrangedAccounts = UpgradeNonceAccountAccounts;
14
15    fn arrange_accounts(
16        accounts: &[solana_sdk::instruction::AccountMeta],
17    ) -> Option<Self::ArrangedAccounts> {
18        let nonce_account = accounts.first()?;
19
20        Some(UpgradeNonceAccountAccounts {
21            nonce_account: nonce_account.pubkey,
22        })
23    }
24}