fix: structs redistribution

This commit is contained in:
Pravdyvy 2026-01-08 08:39:12 +02:00
parent 29f40f5daf
commit 1e2b5fe510
3 changed files with 21 additions and 14 deletions

View File

@ -23,10 +23,14 @@ use wallet::{
account::{AccountSubcommand, NewSubcommand},
config::ConfigSubcommand,
programs::{
ArgsDefinitionOwned, ArgsHolderMaybeUnowned, ArgsHolderOwned, ArgsReceiverMaybeUnowned,
ArgsSenderOwned, ArgsSupplyOwned, amm::AmmProgramAgnosticSubcommand,
native_token_transfer::AuthTransferSubcommand, pinata::PinataProgramAgnosticSubcommand,
token::TokenProgramAgnosticSubcommand,
ArgsReceiverMaybeUnowned, ArgsSenderOwned,
amm::AmmProgramAgnosticSubcommand,
native_token_transfer::AuthTransferSubcommand,
pinata::PinataProgramAgnosticSubcommand,
token::{
ArgsDefinitionOwned, ArgsHolderMaybeUnowned, ArgsHolderOwned, ArgsSupplyOwned,
TokenProgramAgnosticSubcommand,
},
},
},
config::PersistentStorage,

View File

@ -16,6 +16,7 @@ trait ParsePrivacyPreservingAccount {
fn parse(&self) -> Result<PrivacyPreservingAccount>;
}
#[macro_export]
macro_rules! owned_account_name {
($classname: ident, $field: ident) => {
#[derive(Debug, Args, Clone)]
@ -43,10 +44,8 @@ macro_rules! owned_account_name {
}
owned_account_name!(ArgsSenderOwned, from);
owned_account_name!(ArgsDefinitionOwned, definition_account_id);
owned_account_name!(ArgsSupplyOwned, supply_account_id);
owned_account_name!(ArgsHolderOwned, holder_account_id);
#[macro_export]
macro_rules! maybe_unowned_account_name {
($classname: ident, $field: ident) => {
paste! {
@ -107,4 +106,3 @@ macro_rules! maybe_unowned_account_name {
}
maybe_unowned_account_name!(ArgsReceiverMaybeUnowned, to);
maybe_unowned_account_name!(ArgsHolderMaybeUnowned, holder);

View File

@ -1,22 +1,27 @@
use anyhow::Result;
use clap::Subcommand;
use clap::{Args, Subcommand};
use common::transaction::NSSATransaction;
use paste::paste;
use crate::{
WalletCore,
PrivacyPreservingAccount, WalletCore,
cli::{
SubcommandReturnValue, WalletSubcommand,
programs::{
ArgsDefinitionOwned, ArgsHolderMaybeUnowned, ArgsHolderOwned, ArgsReceiverMaybeUnowned,
ArgsSenderOwned, ArgsSupplyOwned, ParsePrivacyPreservingAccount,
},
programs::{ArgsReceiverMaybeUnowned, ArgsSenderOwned, ParsePrivacyPreservingAccount},
},
helperfunctions::{AccountPrivacyKind, parse_addr_with_privacy_prefix},
maybe_unowned_account_name, owned_account_name,
program_facades::{
send_privacy_preserving_transaction_unified,
token::{Token, TokenBurnArgs, TokenDefinitionArgs, TokenMintArgs, TokenTransferArgs},
},
};
owned_account_name!(ArgsDefinitionOwned, definition_account_id);
owned_account_name!(ArgsSupplyOwned, supply_account_id);
owned_account_name!(ArgsHolderOwned, holder_account_id);
maybe_unowned_account_name!(ArgsHolderMaybeUnowned, holder);
/// Represents generic CLI subcommand for a wallet working with token program
#[derive(Subcommand, Debug, Clone)]
pub enum TokenProgramAgnosticSubcommand {