Skip to content

impl IntoIterator for &ChildrenRenderer#4078

Open
its-the-shrimp wants to merge 1 commit intoyewstack:masterfrom
its-the-shrimp:impl-intoiterator-for-ref-childrenrenderer
Open

impl IntoIterator for &ChildrenRenderer#4078
its-the-shrimp wants to merge 1 commit intoyewstack:masterfrom
its-the-shrimp:impl-intoiterator-for-ref-childrenrenderer

Conversation

@its-the-shrimp
Copy link
Contributor

Description

Fixes #4073
Also changed the by-value IntoIterator impl to be more similar to the new impl

Checklist

  • I have reviewed my own code
  • I have added tests

@github-actions
Copy link

Benchmark - core

Yew Master

vnode           fastest       │ slowest       │ median        │ mean          │ samples │ iters
╰─ vnode_clone  2.153 ns      │ 2.902 ns      │ 2.157 ns      │ 2.172 ns      │ 100     │ 1000000000

Pull Request

vnode           fastest       │ slowest       │ median        │ mean          │ samples │ iters
╰─ vnode_clone  2.092 ns      │ 2.124 ns      │ 2.096 ns      │ 2.098 ns      │ 100     │ 1000000000

@github-actions
Copy link

Visit the preview URL for this PR (updated for commit 824e54c):

https://yew-rs-api--pr4078-impl-intoiterator-fo-yedak2ib.web.app

(expires Sat, 28 Mar 2026 21:38:02 GMT)

🔥 via Firebase Hosting GitHub Action 🌎

@github-actions
Copy link

Size Comparison

Details
examples master (KB) pull request (KB) diff (KB) diff (%)
async_clock 101.095 101.095 0 0.000%
boids 168.878 168.878 0 0.000%
communication_child_to_parent 94.508 94.508 0 0.000%
communication_grandchild_with_grandparent 106.345 106.345 0 0.000%
communication_grandparent_to_grandchild 102.690 102.690 0 0.000%
communication_parent_to_child 91.919 91.919 0 0.000%
contexts 106.414 106.414 0 0.000%
counter 87.231 87.231 0 0.000%
counter_functional 89.268 89.268 0 0.000%
dyn_create_destroy_apps 91.148 91.148 0 0.000%
file_upload 100.320 100.320 0 0.000%
function_delayed_input 95.240 95.240 0 0.000%
function_memory_game 174.095 174.095 0 0.000%
function_router 396.168 396.168 0 0.000%
function_todomvc 165.384 165.384 0 0.000%
futures 235.984 235.984 0 0.000%
game_of_life 105.532 105.532 0 0.000%
immutable 260.578 260.578 0 0.000%
inner_html 81.774 81.774 0 0.000%
js_callback 110.397 110.397 0 0.000%
keyed_list 180.841 180.841 0 0.000%
mount_point 85.148 85.148 0 0.000%
nested_list 114.091 114.091 0 0.000%
node_refs 92.521 92.521 0 0.000%
password_strength 1719.354 1719.354 0 0.000%
portals 93.996 93.996 0 0.000%
router 366.811 366.811 0 0.000%
suspense 114.397 114.397 0 0.000%
timer 89.369 89.369 0 0.000%
timer_functional 99.804 99.804 0 0.000%
todomvc 143.096 143.096 0 0.000%
two_apps 87.145 87.145 0 0.000%
web_worker_fib 137.045 137.045 0 0.000%
web_worker_prime 188.229 188.229 0 0.000%
webgl 83.921 83.921 0 0.000%

✅ None of the examples has changed their size significantly.

@github-actions
Copy link

Benchmark - SSR

Yew Master

Details
Benchmark Round Min (ms) Max (ms) Mean (ms) Standard Deviation
Baseline 10 291.061 292.359 291.420 0.346
Hello World 10 477.533 491.018 482.445 3.887
Function Router 10 32725.123 33318.968 33065.949 185.033
Concurrent Task 10 1006.344 1007.463 1006.970 0.389
Many Providers 10 1070.895 1104.765 1085.343 10.630

Pull Request

Details
Benchmark Round Min (ms) Max (ms) Mean (ms) Standard Deviation
Baseline 10 291.267 293.840 291.744 0.760
Hello World 10 485.203 491.409 487.318 1.944
Function Router 10 31892.276 32642.734 32319.276 259.335
Concurrent Task 10 1006.905 1007.663 1007.260 0.271
Many Providers 10 1069.871 1116.571 1086.073 13.983

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

for x in children.iter() works in html! but for x in &children does not

1 participant