From a9d5943939261e27e58bcf5cacbb618a0f63e999 Mon Sep 17 00:00:00 2001 From: 魏曹先生 <1992414357@qq.com> Date: Mon, 10 Aug 2026 15:49:31 +0800 Subject: 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 --- mingling_core/src/program/single_instance.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'mingling_core/src/program/single_instance.rs') diff --git a/mingling_core/src/program/single_instance.rs b/mingling_core/src/program/single_instance.rs index 8b165bf..083897d 100644 --- a/mingling_core/src/program/single_instance.rs +++ b/mingling_core/src/program/single_instance.rs @@ -13,7 +13,7 @@ use crate::{Program, ProgramCollect}; /// the inner value is immutable once set until `take()`). /// - `take()` is called only after execution completes, when no code still /// holds a reference from `get_raw()`. -pub(crate) struct ProgramCell { +pub struct ProgramCell { initialized: AtomicBool, inner: UnsafeCell>>, } @@ -88,6 +88,7 @@ impl ProgramCell { } /// Global static reference to the current program instance +#[allow(clippy::redundant_pub_crate)] pub(crate) static THIS_PROGRAM: ProgramCell = ProgramCell::new(); /// Returns a reference to the current program instance, panics if not set. -- cgit