From 03b487f0f93ac32835149d4c1a0fb420341134f8 Mon Sep 17 00:00:00 2001 From: 魏曹先生 <1992414357@qq.com> Date: Mon, 10 Aug 2026 16:30:20 +0800 Subject: feat(pathf): enforce pedantic lints and update API ergonomics - Add `#[must_use]` to public constructors and getters - Change `init_with_config` to accept `&PathfinderConfig` instead of owned value - Refactor `map_or_else` and `or_insert_with` for clippy compliance - Add `#![deny(clippy::pedantic)]` and `#![deny(clippy::nursery)]` - Document error cases in public API docs - Simplify duplicated dispatcher_clap analysis logic --- mingling_pathf/src/patterns/pack.rs | 27 ++++++++++++--------------- 1 file changed, 12 insertions(+), 15 deletions(-) (limited to 'mingling_pathf/src/patterns/pack.rs') diff --git a/mingling_pathf/src/patterns/pack.rs b/mingling_pathf/src/patterns/pack.rs index 76597ba..e5e14e6 100644 --- a/mingling_pathf/src/patterns/pack.rs +++ b/mingling_pathf/src/patterns/pack.rs @@ -84,23 +84,20 @@ fn try_extract_pack_name(m: &syn::ItemMacro) -> Option { // Skip leading attributes/doc comments loop { - match iter.next()? { - proc_macro2::TokenTree::Ident(ident) => { - // Found the first ident, this is the type name - let type_name = ident.to_string(); - - // Check if `=` follows - if let Some(proc_macro2::TokenTree::Punct(p)) = iter.next() - && p.as_char() == '=' - { - // pack!(TypeName = InnerType) - return Some(type_name); - } - - // pack_err!(TypeName) — only a single ident + if let proc_macro2::TokenTree::Ident(ident) = iter.next()? { + // Found the first ident, this is the type name + let type_name = ident.to_string(); + + // Check if `=` follows + if let Some(proc_macro2::TokenTree::Punct(p)) = iter.next() + && p.as_char() == '=' + { + // pack!(TypeName = InnerType) return Some(type_name); } - _ => continue, + + // pack_err!(TypeName) — only a single ident + return Some(type_name); } } } -- cgit