From 3480d26c10f09f886de47f7f31096b4bc1303a41 Mon Sep 17 00:00:00 2001 From: 魏曹先生 <1992414357@qq.com> Date: Tue, 14 Jul 2026 03:26:28 +0800 Subject: feat(picker): add `pick` method to start and extend flag chains --- mingling_picker/src/picker/patterns.rs | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'mingling_picker/src/picker/patterns.rs') diff --git a/mingling_picker/src/picker/patterns.rs b/mingling_picker/src/picker/patterns.rs index 2242a70..2501823 100644 --- a/mingling_picker/src/picker/patterns.rs +++ b/mingling_picker/src/picker/patterns.rs @@ -19,6 +19,11 @@ internal_repeat!(1..32 => { where (T$: Pickable + Default,+) { #[allow(clippy::type_complexity)] + /// Adds a new flag to the picking chain, returning a new `PickerPattern` with one more type parameter. + /// + /// This method extends the current picking pattern by appending an additional flag. + /// The previous flags and their results are preserved as part of the new pattern. + /// The new flag's result is initially `Unparsed`. pub fn pick(self, flag: &'a PickerFlag<'a, N>) -> PickerPattern$+<'a, (T$,+), N> where N: Pickable + Default, @@ -42,6 +47,10 @@ internal_repeat!(1..32 => { }); impl<'a> Picker<'a> { + /// Creates a `PickerPattern1` from the given flag to start a picking chain. + /// + /// This method initiates a parameter picking chain with one flag. + /// The result is initially `Unparsed`. pub fn pick(self, flag: &'a PickerFlag<'a, N>) -> PickerPattern1<'a, N> where N: Pickable + Default, -- cgit