Skip to content
This repository was archived by the owner on Mar 11, 2025. It is now read-only.

Commit 318244b

Browse files
committed
parse instead of validate for decimals
1 parent a85d361 commit 318244b

File tree

2 files changed

+7
-20
lines changed

2 files changed

+7
-20
lines changed

token/cli/src/clap_app.rs

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -306,16 +306,12 @@ pub fn mint_address_arg<'a>() -> Arg<'a> {
306306
.help(MINT_ADDRESS_ARG.help)
307307
}
308308

309-
fn is_mint_decimals(string: &str) -> Result<(), String> {
310-
is_parsable::<u8>(string)
311-
}
312-
313309
pub fn mint_decimals_arg<'a>() -> Arg<'a> {
314310
Arg::with_name(MINT_DECIMALS_ARG.name)
315311
.long(MINT_DECIMALS_ARG.long)
316312
.takes_value(true)
317313
.value_name("MINT_DECIMALS")
318-
.validator(is_mint_decimals)
314+
.value_parser(clap::value_parser!(u8))
319315
.help(MINT_DECIMALS_ARG.help)
320316
}
321317

@@ -717,7 +713,7 @@ pub fn app<'a>(
717713
.arg(
718714
Arg::with_name("decimals")
719715
.long("decimals")
720-
.validator(is_mint_decimals)
716+
.value_parser(clap::value_parser!(u8))
721717
.value_name("DECIMALS")
722718
.takes_value(true)
723719
.default_value(default_decimals)

token/cli/src/command.rs

Lines changed: 5 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3510,7 +3510,7 @@ pub async fn process_command<'a>(
35103510
.await
35113511
}
35123512
(CommandName::CreateToken, arg_matches) => {
3513-
let decimals = value_t_or_exit!(arg_matches, "decimals", u8);
3513+
let decimals = *arg_matches.get_one::<u8>("decimals").unwrap();
35143514
let mint_authority =
35153515
config.pubkey_or_default(arg_matches, "mint_authority", &mut wallet_manager)?;
35163516
let memo = value_t!(arg_matches, "memo", String).ok();
@@ -3859,9 +3859,7 @@ pub async fn process_command<'a>(
38593859
push_signer_with_dedup(owner_signer, &mut bulk_signers);
38603860
}
38613861

3862-
let mint_decimals = arg_matches
3863-
.get_one(MINT_DECIMALS_ARG.name)
3864-
.map(|v: &String| v.parse::<u8>().unwrap());
3862+
let mint_decimals = arg_matches.get_one::<u8>(MINT_DECIMALS_ARG.name).copied();
38653863
let fund_recipient = arg_matches.is_present("fund_recipient");
38663864
let allow_unfunded_recipient = arg_matches.is_present("allow_empty_recipient")
38673865
|| arg_matches.is_present("allow_unfunded_recipient");
@@ -3948,9 +3946,7 @@ pub async fn process_command<'a>(
39483946
.unwrap()
39493947
.unwrap();
39503948
let amount = value_t_or_exit!(arg_matches, "amount", f64);
3951-
let mint_decimals = arg_matches
3952-
.get_one(MINT_DECIMALS_ARG.name)
3953-
.map(|v: &String| v.parse::<u8>().unwrap());
3949+
let mint_decimals = arg_matches.get_one::<u8>(MINT_DECIMALS_ARG.name).copied();
39543950
let mint_info = config.get_mint_info(&token, mint_decimals).await?;
39553951
let recipient = if let Some(address) =
39563952
pubkey_of_signer(arg_matches, "recipient", &mut wallet_manager).unwrap()
@@ -4414,9 +4410,7 @@ pub async fn process_command<'a>(
44144410
let maximum_fee = value_t_or_exit!(arg_matches, "maximum_fee", f64);
44154411
let (transfer_fee_authority_signer, transfer_fee_authority_pubkey) = config
44164412
.signer_or_default(arg_matches, "transfer_fee_authority", &mut wallet_manager);
4417-
let mint_decimals = arg_matches
4418-
.get_one(MINT_DECIMALS_ARG.name)
4419-
.map(|v: &String| v.parse::<u8>().unwrap());
4413+
let mint_decimals = arg_matches.get_one::<u8>(MINT_DECIMALS_ARG.name).copied();
44204414
let bulk_signers = vec![transfer_fee_authority_signer];
44214415

44224416
command_set_transfer_fee(
@@ -4561,10 +4555,7 @@ pub async fn process_command<'a>(
45614555

45624556
let (owner_signer, owner) =
45634557
config.signer_or_default(arg_matches, "owner", &mut wallet_manager);
4564-
4565-
let mint_decimals = arg_matches
4566-
.get_one(MINT_DECIMALS_ARG.name)
4567-
.map(|v: &String| v.parse::<u8>().unwrap());
4558+
let mint_decimals = arg_matches.get_one::<u8>(MINT_DECIMALS_ARG.name).copied();
45684559

45694560
let (instruction_type, elgamal_keypair, aes_key) = match c {
45704561
CommandName::DepositConfidentialTokens => {

0 commit comments

Comments
 (0)