aboutsummaryrefslogtreecommitdiff
path: root/mingling_core/src/program.rs
diff options
context:
space:
mode:
author魏曹先生 <1992414357@qq.com>2026-08-10 15:49:31 +0800
committer魏曹先生 <1992414357@qq.com>2026-08-10 15:49:31 +0800
commita9d5943939261e27e58bcf5cacbb618a0f63e999 (patch)
treed1cacc2af939e993f2d7d2794500e6456659e6a9 /mingling_core/src/program.rs
parent782d2458dc4ad4336e1407e1f107e43e39b0b991 (diff)
refactor(core): improve code style and public API clarity
Replace bool-based settings with enums, refine visibility and signatures, and standardize `Self` usage across the crate. - Introduce `ErrorOutput`, `RenderOutput`, `PanicSilence`, `Verbosity`, `ColorOutput`, and `ProgressOutput` enums for clearer configuration semantics - Make `GlobalResources`, `ProgramCell`, and `split_input`/`split_input_string` public - Change hook info parameters to accept references and `split_input_string` to take `&str` - Apply `Self` shorthand throughout implementations and add `#[must_use]` attributes where appropriate - Enable strict clippy lints with targeted allowances
Diffstat (limited to 'mingling_core/src/program.rs')
-rw-r--r--mingling_core/src/program.rs8
1 files changed, 4 insertions, 4 deletions
diff --git a/mingling_core/src/program.rs b/mingling_core/src/program.rs
index 11e1bbf..3c43cee 100644
--- a/mingling_core/src/program.rs
+++ b/mingling_core/src/program.rs
@@ -109,7 +109,7 @@ where
/// Creates a new Program instance with the provided command-line arguments.
pub fn new_with_args(args: impl Into<StringVec>) -> Self {
- Program {
+ Self {
collect: std::marker::PhantomData,
args: args.into().into(),
@@ -133,14 +133,14 @@ where
/// # Panics
///
/// Panics if the program has not been initialized yet.
- pub fn this_program() -> &'static Program<C>
+ pub fn this_program() -> &'static Self
where
C: 'static,
{
THIS_PROGRAM
.get_raw()
.unwrap()
- .downcast_ref::<Program<C>>()
+ .downcast_ref::<Self>()
.unwrap()
}
@@ -173,7 +173,7 @@ where
/// # Returns
///
/// The previous command-line arguments.
- pub fn replace_args(&mut self, args: Vec<String>) -> Vec<String> {
+ pub const fn replace_args(&mut self, args: Vec<String>) -> Vec<String> {
std::mem::replace(&mut self.args, args)
}