use crate::*; pub struct Layered<'a, E: Engine>(pub Collection<'a, E>); impl<'a, E: Engine> Layered<'a, E> { pub fn new () -> Self { Self(Collection::new()) } } impl<'a, E: Engine> Collect<'a, E> for Layered<'a, E> { fn add_box (mut self, item: Box + 'a>) -> Self { self.0 = self.0.add_box(item); self } fn add_ref (mut self, item: &'a dyn Render) -> Self { self.0 = self.0.add_ref(item); self } }