diff options
| author | 魏曹先生 <1992414357@qq.com> | 2026-06-23 00:23:00 +0800 |
|---|---|---|
| committer | 魏曹先生 <1992414357@qq.com> | 2026-06-23 00:23:00 +0800 |
| commit | d94103fd7e76dd86cd64c23f00c818165fb7dc22 (patch) | |
| tree | a435e61fdaa4c273d221d9bbbba640172cb20f6a /CHANGELOG.md | |
| parent | 443ffe86485519a218997955335cde142733f88f (diff) | |
Replace macro_rules dispatch with proc-macro generation
Generate `render()` and `do_chain()` match dispatch directly in
`program_final_gen`, using a compile-time `ASYNC_ENABLED` constant to
select the correct sync/async signature. Removes the
`__dispatch_program_renderers!` and `__dispatch_program_chains!` macros
from `mingling_core`.
Diffstat (limited to 'CHANGELOG.md')
| -rw-r--r-- | CHANGELOG.md | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index b9b7bd7..637b074 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -72,6 +72,8 @@ 2. **\[core:comp\]** Changed the completion system's node filtering to exclude all hidden nodes (names starting with `_`) instead of only the specific `__comp` node. This makes the completion script generation more general — any node prefixed with an underscore is now treated as internal/hidden and excluded from suggestions. +3. **\[macros\]** Consolidated `__dispatch_program_renderers!` and `__dispatch_program_chains!` from `macro_rules!` into the `program_final_gen` proc-macro (`mingling_macros/src/lib.rs`), removing them from `mingling_core/src/program.rs`. The `render()` and `do_chain()` match dispatch is now generated directly by the proc-macro, using a compile-time `ASYNC_ENABLED` constant (via `#[cfg(feature = "async")]`) to select the correct sync/async signature at proc-macro compilation time, replacing the previous `#[cfg]`-gated `macro_rules!` dispatch that relied on per-crate feature resolution. + #### Features: 1. **\[core\]** Added the `unpack_chain_process!` macro for ergonomically extracting the inner value from a `ChainProcess` result. |
