1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
use crate::widget_sequence::FlexWidget; use crate::widget_sequence::WidgetSequence; pub struct WidgetList<Child: WidgetSequence> { pub children: Vec<Child>, } impl<Child: WidgetSequence> WidgetSequence for WidgetList<Child> { fn widgets(&mut self) -> Vec<&mut dyn FlexWidget> { self.children .iter_mut() .flat_map(|child| child.widgets()) .collect() } }