Kaede Hoshikawa
|
485a1b8c4a
|
Function Components & Hooks V2 (#2401)
* Make a use_hook hook with the new Hook trait.
* Implement Lifetime.
* Rewrites function signature.
* Only apply lifetime if there're other lifetimes.
* Cleanup signature rewrite logic.
* Rewrite hook body.
* Port some built-in hooks.
* Finish porting all built-in hooks.
* Port tests.
* Fix tests.
* Migrate to macro-based hooks.
* Fix HookContext, add tests on non-possible locations.
* Fix stderr for trybuild.
* Add 1 more test case.
* Adjust doc location.
* Pretty print hook signature.
* Fix Items & std::ops::Fn*.
* Add use_memo.
* Optimise Implementation of hooks.
* Use Box to capture function value only.
* Detect whether needs boxing.
* Add args if boxing not needed.
* Enforce hook number.
* Deduplicate use_effect.
* Optimise Implementation.
* Update documentation.
* Fix website test. Strip BoxedHook implementation from it.
* Allow doc string.
* Workaround doc tests.
* Optimise codebase & documentation.
* Fix website test.
* Reduce implementation complexity.
* Destructor is no more.
* Documentation and macros.
* Reduce heap allocation and hook complexity.
* Remove Queue as well.
* Prefer Generics.
* Fix typo.
* Remove more allocations.
* Add comments.
* Remove outdated comment.
* Bare Function Pointer for better code size.
|
2022-01-28 11:51:37 +02:00 |
|