diff options
| author | 魏曹先生 <1992414357@qq.com> | 2026-04-27 21:19:56 +0800 |
|---|---|---|
| committer | 魏曹先生 <1992414357@qq.com> | 2026-04-27 21:19:56 +0800 |
| commit | 2c32196bbc632411d4f6998a506ca262a805a666 (patch) | |
| tree | 62934fbda52b11bfff984030dbbe52a1926fb4ac /CHANGELOG.md | |
| parent | ad10b82c1e6785cbf88562117b1609905cfeb6dc (diff) | |
Add global resource system to Program
Diffstat (limited to 'CHANGELOG.md')
| -rw-r--r-- | CHANGELOG.md | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index 582cbdb..0997e27 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -74,6 +74,29 @@ fn parse(prev: PickEntry) -> mingling::ChainProcess<ThisProgram> { } ``` +8. Added a resource system to `Program` for managing global resources [Details](docs/res/changlog_examples/feat_program_res.rs) + +```rust +// Define global resource +#[derive(Debug, Default, Clone)] +struct Global { + name: String, + age: i32, +} + +// Add global resource +program.with_resource(Global::default()); + +// Read the global resource +let global = this::<ThisProgram>().res_or_default::<Global>(); + +// Modify the global resource +this::<ThisProgram>().modify_res(|r: &mut Global| { + r.name = name; + r.age = age +}); +``` + #### **BREAKING CHANGES**: 1. **\[macros\]** Removed macro `dispatcher_render!` from `mingling_macros` |
