Commit 78d4204
authored
Introduce explicit internal datastructures modeling dom state (#2330)
* detach destructures now
* add failing keyed-list issue
* crude port to the new bundle infrastructure
* port over the infrastructure
the new bcomp is especially nice and lost a few unwraps owed to not having
to reserve space for a scope before rendering.
Note also that bsuspense has been slimmed a bit, storing the suspended flag
implicitly in the state.
some naming is not perfect yet and has to be adjusted still.
* mass rename: apply -> reconcile
* get rid of move_before in favor of shift
* generate id directly when creating a new scope
* bundle for text nodes
* work on naming: ancestor -> bundle
* slightly optimize list reconciler, add doccomments
* address review
* add internal documentation
* address review comments
rename fields in bsuspense
convert to gloo::events
* move even more stuff into dom_bundle to scope exports
- app_handle and layout_tests are now in there
- items are publically re-exported in crate::dom_bundle
- dom_bundle itself is private
- btag and bcomp get their own submodules
- bcomp now contains the lifecycle and scope impls
* move replace into Reconcilable
* move lifecycle and scope back into html as per review
* move back Value and InputFields into html
* actually only type-check format args in production
* fix documentation link
* move btag_impl up into containing module
* shift comps immediately
shifting the rendered Nodes does not tie into the lifecycle,
as such it can happen immediately
* use list-bundle in tag-bundle
* fix cargo make tests
* improve 05_swap benchmark
* fix a blunder where I swapped operands
* fix naming of BNode variants1 parent 221b4df commit 78d4204
32 files changed
Lines changed: 5604 additions & 4946 deletions
File tree
- packages/yew/src
- dom_bundle
- btag
- tests
- html/component
- tests
- virtual_dom
- tools
- benchmark-hooks
- benchmark-struct
- process-benchmark-results
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
82 | 82 | | |
83 | 83 | | |
84 | 84 | | |
85 | | - | |
| 85 | + | |
86 | 86 | | |
87 | 87 | | |
88 | 88 | | |
| |||
Lines changed: 11 additions & 9 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
2 | | - | |
| 1 | + | |
3 | 2 | | |
4 | | - | |
5 | | - | |
6 | | - | |
7 | | - | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
8 | 7 | | |
9 | 8 | | |
10 | 9 | | |
11 | 10 | | |
12 | 11 | | |
13 | 12 | | |
14 | | - | |
| 13 | + | |
15 | 14 | | |
16 | 15 | | |
17 | 16 | | |
| |||
27 | 26 | | |
28 | 27 | | |
29 | 28 | | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
30 | 32 | | |
31 | | - | |
| 33 | + | |
32 | 34 | | |
33 | 35 | | |
34 | 36 | | |
35 | 37 | | |
36 | 38 | | |
37 | | - | |
| 39 | + | |
38 | 40 | | |
39 | 41 | | |
40 | 42 | | |
| |||
0 commit comments