summaryrefslogtreecommitdiffstats
path: root/lazy
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2021-11-08 15:32:58 +0700
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2021-11-29 15:04:13 +0700
commitf7792d89d64c39cdde9da030bec80fb6f461a0e3 (patch)
tree3b41c97fdfb1c832789a2034f5be7a8afa2ac801 /lazy
parent010b62b9ee20b03053ab538a5910795bc0618378 (diff)
downloadiced-f7792d89d64c39cdde9da030bec80fb6f461a0e3.tar.gz
iced-f7792d89d64c39cdde9da030bec80fb6f461a0e3.tar.bz2
iced-f7792d89d64c39cdde9da030bec80fb6f461a0e3.zip
Hide `Box` allocation in `component::view`
... we may be able to avoid it with generics in the future.
Diffstat (limited to 'lazy')
-rw-r--r--lazy/src/component.rs8
1 files changed, 4 insertions, 4 deletions
diff --git a/lazy/src/component.rs b/lazy/src/component.rs
index 04832d9d..6d57a2a9 100644
--- a/lazy/src/component.rs
+++ b/lazy/src/component.rs
@@ -10,18 +10,18 @@ use iced_native::{
use ouroboros::self_referencing;
use std::marker::PhantomData;
-pub fn view<'a, Event, Message, Renderer>(
- component: Box<dyn Component<Message, Renderer, Event = Event> + 'a>,
+pub fn view<'a, C, Message, Renderer>(
+ component: C,
) -> Element<'a, Message, Renderer>
where
+ C: Component<Message, Renderer> + 'a,
Message: 'a,
- Event: 'a,
Renderer: iced_native::Renderer + 'a,
{
Element::new(Instance {
state: Some(
StateBuilder {
- component,
+ component: Box::new(component),
cache_builder: |state| Cache {
element: state.view(),
message: PhantomData,