Auto merge of #8385 - frewsxcv:compositing-iterators, r=Manishearth

Use more iterators in compositing component

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8385)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2015-11-07 10:33:32 +05:30
commit 3510cec3e5
2 changed files with 8 additions and 8 deletions

View file

@ -2031,13 +2031,11 @@ impl<Window: WindowMethods> IOCompositor<Window> {
}
}
pub fn cache_unused_buffers(&mut self, buffers: Vec<Box<LayerBuffer>>) {
if !buffers.is_empty() {
let surfaces = buffers.into_iter().map(|buffer| {
buffer.native_surface
}).collect();
self.surface_map.insert_surfaces(&self.native_display, surfaces);
}
pub fn cache_unused_buffers<B>(&mut self, buffers: B)
where B: IntoIterator<Item=Box<LayerBuffer>>
{
let surfaces = buffers.into_iter().map(|buffer| buffer.native_surface);
self.surface_map.insert_surfaces(&self.native_display, surfaces);
}
#[allow(dead_code)]

View file

@ -68,7 +68,9 @@ impl SurfaceMap {
}
}
pub fn insert_surfaces(&mut self, display: &NativeDisplay, surfaces: Vec<NativeSurface>) {
pub fn insert_surfaces<I>(&mut self, display: &NativeDisplay, surfaces: I)
where I: IntoIterator<Item=NativeSurface>
{
for surface in surfaces {
self.insert(display, surface);
}