| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
Rename the internal fallback type and its associated `ProgramCollect`
plumbing from `ErrorDispatcherNotFound`/`build_dispatcher_not_found` to
`EntryFallback`/`build_entry_fallback`, along with the generated enum
variant and pack type. Update all documentation, examples, and tests
accordingly.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
| |
Add the Arborium JS library header to the documentation build via
RUSTDOCFLAGS and docs.rs metadata so generated docs include the
interactive Arborium components.
|
| |
|
|
|
|
|
| |
Add convenience presets (`mini`, `advanced`, `full`, `build_advanced`,
`build_full`) to `mingling/Cargo.toml` and document them in both
English and Chinese feature docs. Update getting-started guides to
reflect the new default `core`/`macros` features.
|
| |
|
|
|
|
|
| |
Add `Entry` struct with `pub(crate)` visibility for
`inner` fields, plus `new()` and `this()` constructors
on `ThisProgram` for docs.rs demonstration of the
`gen_program!` macro expansion.
|
| | |
|
| | |
|
| |
|
|
|
| |
Update all references across docs, examples, and configuration files to
use the shorter `extras` feature name.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Add a new `#[command]` attribute macro (feature-gated behind
`extra_macros`) that converts a plain function with a `Vec<String>`
parameter into a fully wired Mingling command. The macro generates a
`dispatcher!` call, a `#[chain]` wrapper, and a hidden module
re-exporting
all generated types.
Also add `CommandPattern` to the pathf pattern analyzer to recognize
`#[command]`-annotated functions and track their generated hidden
modules.
|
| | |
|
| |
|
|
|
|
|
| |
Replace the `builds` feature with `build` across the crate, keeping
a backward-compatible alias for the old name. Update all internal
visibility from `#[doc(hidden)] pub mod` to `pub(crate) mod` and
reorganize the `__private` module into a dedicated `private.rs`.
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
fields
Declare `Grouped` as `unsafe trait` to make its soundness invariant
visible.
Make `AnyOutput.type_id` and `member_id` private; add public accessors
and
the `unsafe fn new_bare` constructor.
|
| | |
|
| |
|
|
| |
pipeline error routing
|
| |
|
|
|
|
|
| |
Implement `RenderResult::append_other()` to merge buffered content and
immediate output behavior from one result into another. Add the
`r_append!` macro with both explicit buffer (`dst, src`) and implicit
buffer (`src`) usage forms, re-exported from `mingling::prelude`.
|
| |
|
|
|
|
|
|
|
|
| |
Remove `Deref<Target=str>` and `render_text:String` in favor of
`render_buffer:Vec<(String, RenderResultMode)>` and an
`immediate_output`
flag. Add `RenderResultMode` enum, `r_eprint!`/`r_eprintln!` macros, and
new buffer manipulation methods (`append_to_buffer`, `eprint`, etc.).
Update `Display` to trim output and remove trailing newline. Migrate all
callers and tests away from `Deref` usage.
|
| |
|
|
|
|
|
| |
Add `#![deny(missing_docs)]` across multiple crates and fill in
documentation for all public items, including struct fields, enum
variants, trait methods, and proc macros. Also mark two shell scripts
as executable.
|
| |
|
|
|
|
|
|
| |
Add `docs_rs` feature flag to enable docs.rs-specific configuration,
including `--generate-link-to-definition` and logo display.
Include the feature in build scripts, editor settings, and feature
constants for consistent documentation generation.
|
| |
|
|
|
|
|
|
| |
Update all documentation and code examples to use the new
`#[renderer(buffer)]`
pattern with `r_println!` instead of manually constructing
`RenderResult`
with `writeln!`.
|
| |
|
|
|
|
|
|
|
|
|
| |
macros
Reintroduce `r_print!` and `r_println!` macros as public exports, now
supporting both explicit buffer argument and implicit `#[buffer]` attr.
Add `#[buffer]` attribute macro that wraps unit-returning functions to
produce a `RenderResult` with an automatically injected buffer variable.
Relax `RenderResult::print()` and `println()` to accept `impl
AsRef<str>`.
|
| |
|
|
|
|
|
|
|
|
| |
Remove the `Default` bound from `pick()` and `EntryPicker::pick()`,
allowing non-Default types to be used as arguments.
Add `IntoPicker::pick_or`, `pick_or_default`, and `pick_or_route`
convenience methods for common fallback patterns.
Fix token splitting in `arg!` macro to correctly handle angle brackets.
|
| |
|
|
|
| |
Move routing methods exclusively to the `Routable` trait and update
all macro-generated code to reference `Routable` instead of `Grouped`
|
| |
|
|
|
| |
Move the REMAINS constant definition into arg_picker and re-export it
through mingling's constants module for unified access
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
methods
Deprecate `ShellContext` methods `filling_argument_first`,
`filling_argument`, `typing_argument`, `strip_typed_argument`, and
`get_typed_arguments` when the `picker` feature is active, as they
do not work under all `ParserStyle` settings.
Add `#![allow(deprecated)]` to the affected modules to suppress
warnings from internal usage.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
enabled
|
| | |
|
| |
|
|
|
|
|
|
| |
BREAKING CHANGE: Remove `mingling_support` feature from arg-picker
crate. The
`EntryPicker` trait and `corebind` module are now part of the mingling
crate
directly, and `build_pattern1` is now a public method.
|
| |
|
|
|
| |
Move the inline `remains_arg` definition into a shared public constant
`REMAINS` and update all consumers to import it from the new location.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
formatting
Add `MINGLING_CORE` and `MINGLING_MACROS` feature flag constants to
the mingling crate, mirroring existing pattern for other features
Reorganize imports and reformat closures in mingling_picker for
consistent style
|
| | |
|