<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mingling.git/mingling_picker/src/parselib.rs, branch feat/picker2</title>
<subtitle>用于开发多子命令的命令行框架
</subtitle>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/mingling.git/'/>
<entry>
<title>feat(mingling_picker): replace bool Matcher with FlagMatcher</title>
<updated>2026-07-15T21:25:21+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-07-15T20:08:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/mingling.git/commit/?id=ea6dda762aa147ebcbc29b269e65b78dd046f4dd'/>
<id>ea6dda762aa147ebcbc29b269e65b78dd046f4dd</id>
<content type='text'>
Rename `bool_matcher` module to `flag_matcher` and introduce a dedicated
`FlagMatcher` struct, moving matching logic away from the `bool` type
itself
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Rename `bool_matcher` module to `flag_matcher` and introduce a dedicated
`FlagMatcher` struct, moving matching logic away from the `bool` type
itself
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(picker): return NotFound for unmatched boolean flags</title>
<updated>2026-07-15T17:13:09+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-07-15T17:13:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/mingling.git/commit/?id=3acf9cbdf292bf7724a9d208b887dc8dabf3e689'/>
<id>3acf9cbdf292bf7724a9d208b887dc8dabf3e689</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(picker): add builtin bool pickable and parselib matcher framework</title>
<updated>2026-07-15T11:33:45+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-07-15T11:31:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/mingling.git/commit/?id=8b2bbdef88f47838ed0326f5c9cf86bac84babde'/>
<id>8b2bbdef88f47838ed0326f5c9cf86bac84babde</id>
<content type='text'>
Add `Pickable` implementation for `bool` and the supporting `Matcher`
trait
with utility functions for argument matching.  Expose `pickable_needed`
and
`matcher_needed` modules for downstream trait implementors.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add `Pickable` implementation for `bool` and the supporting `Matcher`
trait
with utility functions for argument matching.  Expose `pickable_needed`
and
`matcher_needed` modules for downstream trait implementors.
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(pickable): redesign Pickable trait with two-phase parse API</title>
<updated>2026-07-14T19:52:25+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-07-14T19:52:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/mingling.git/commit/?id=559ff1a4d5d164c2fdbc29a9957e3db38651705f'/>
<id>559ff1a4d5d164c2fdbc29a9957e3db38651705f</id>
<content type='text'>
Introduce `get_attr`, `tag`, and `pick` as the new trait methods,
replacing
the single `tag` method that returned a `PickerTag`.  This enables the
parser to first collect all argument position requirements and then
resolve
them in a second pass.

Rename `PickerTag` to `PickerArgInfo` and reorder `PickerFlagAttr`
variants
to reflect parse priority (`Positional &lt; Flag &lt; Single &lt; Multi`).  Add
`positional_or_else` helper to `PickerFlagAttr`.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Introduce `get_attr`, `tag`, and `pick` as the new trait methods,
replacing
the single `tag` method that returned a `PickerTag`.  This enables the
parser to first collect all argument position requirements and then
resolve
them in a second pass.

Rename `PickerTag` to `PickerArgInfo` and reorder `PickerFlagAttr`
variants
to reflect parse priority (`Positional &lt; Flag &lt; Single &lt; Multi`).  Add
`positional_or_else` helper to `PickerFlagAttr`.
</pre>
</div>
</content>
</entry>
<entry>
<title>feat: add lifetime-bound pickable support and refine type constraints</title>
<updated>2026-07-14T11:51:19+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-07-14T11:43:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/mingling.git/commit/?id=fdd26053228593162fd5c41df9cfbc45d0c731b9'/>
<id>fdd26053228593162fd5c41df9cfbc45d0c731b9</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(mingling): add ParserStyle and re-export parselib module</title>
<updated>2026-07-14T10:23:45+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-07-14T10:23:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/mingling.git/commit/?id=e66b1335a22df2a9f9555e59e30200644bb3483f'/>
<id>e66b1335a22df2a9f9555e59e30200644bb3483f</id>
<content type='text'>
Add a configurable `ParserStyle` struct defining option prefix,
separator
and case-sensitivity conventions, with built-in constants for Unix,
PowerShell and Windows styles. Provide a one-time global style setter.

Re-export the new `parselib` module from `mingling_picker` and wire it
through `mingling`'s `picker` facade. Also relocate `Groupped` and
`RenderResult` re-exports in `prelude` for better ordering.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add a configurable `ParserStyle` struct defining option prefix,
separator
and case-sensitivity conventions, with built-in constants for Unix,
PowerShell and Windows styles. Provide a one-time global style setter.

Re-export the new `parselib` module from `mingling_picker` and wire it
through `mingling`'s `picker` facade. Also relocate `Groupped` and
`RenderResult` re-exports in `prelude` for better ordering.
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(picker): add parselib module and README</title>
<updated>2026-07-14T09:38:22+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-07-14T09:38:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/mingling.git/commit/?id=a18efb4aaaab51cb9ef1663f58286747e2e951ee'/>
<id>a18efb4aaaab51cb9ef1663f58286747e2e951ee</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
