From 8083990e94f753fc8cd6ef172f38ea1d82039047 Mon Sep 17 00:00:00 2001 From: lifegpc Date: Thu, 5 Jun 2025 07:52:57 +0800 Subject: [PATCH] Add cond compile for some command line arguments --- src/args.rs | 2 ++ src/main.rs | 2 ++ src/types.rs | 4 ++++ 3 files changed, 8 insertions(+) diff --git a/src/args.rs b/src/args.rs index b614c50..d872401 100644 --- a/src/args.rs +++ b/src/args.rs @@ -57,6 +57,7 @@ pub struct Arg { )] /// Archive code page pub archive_code_page: Option, + #[cfg(feature = "circus")] #[arg(long, value_enum, global = true)] /// Circus Game pub circus_mes_type: Option, @@ -66,6 +67,7 @@ pub struct Arg { #[arg(global = true, action = ArgAction::SetTrue, short, long)] /// Print backtrace on error pub backtrace: bool, + #[cfg(feature = "escude-arc")] #[arg(long, action = ArgAction::SetTrue, global = true)] /// Whether to use fake compression for Escude archive pub escude_fake_compress: bool, diff --git a/src/main.rs b/src/main.rs index 9d1fcae..6739efe 100644 --- a/src/main.rs +++ b/src/main.rs @@ -985,7 +985,9 @@ fn main() { unsafe { std::env::set_var("RUST_LIB_BACKTRACE", "1") }; } let cfg = types::ExtraConfig { + #[cfg(feature = "circus")] circus_mes_type: arg.circus_mes_type.clone(), + #[cfg(feature = "escude-arc")] escude_fake_compress: arg.escude_fake_compress.clone(), }; match &arg.command { diff --git a/src/types.rs b/src/types.rs index 46201c5..96c60dc 100644 --- a/src/types.rs +++ b/src/types.rs @@ -80,6 +80,7 @@ impl AsRef for OutputScriptType { } } +#[cfg(feature = "circus")] #[derive(Clone, Copy, Debug, ValueEnum, PartialEq, Eq, PartialOrd, Ord)] pub enum CircusMesType { /// fortissimo//Akkord:Bsusvier @@ -146,6 +147,7 @@ pub enum CircusMesType { Nightshade, } +#[cfg(feature = "circus")] impl AsRef for CircusMesType { fn as_ref(&self) -> &str { match self { @@ -185,7 +187,9 @@ impl AsRef for CircusMesType { } pub struct ExtraConfig { + #[cfg(feature = "circus")] pub circus_mes_type: Option, + #[cfg(feature = "escude-arc")] pub escude_fake_compress: bool, }