Skip to content

Commit f983d26

Browse files
committed
use copied() and avoid creating a vector in items and par_items
1 parent 51ee3d4 commit f983d26

File tree

1 file changed

+11
-8
lines changed
  • compiler/rustc_middle/src/hir

1 file changed

+11
-8
lines changed

compiler/rustc_middle/src/hir/mod.rs

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -46,17 +46,20 @@ pub struct ModuleItems {
4646
}
4747

4848
impl ModuleItems {
49-
pub fn items(&self) -> impl Iterator<Item = ItemId> {
50-
self.items.to_vec().into_iter()
49+
pub fn items(&self) -> impl Iterator<Item = ItemId> + '_ {
50+
self.items.iter().copied()
5151
}
52-
pub fn trait_items(&self) -> impl Iterator<Item = TraitItemId> {
53-
self.trait_items.to_vec().into_iter()
52+
53+
pub fn trait_items(&self) -> impl Iterator<Item = TraitItemId> + '_ {
54+
self.trait_items.iter().copied()
5455
}
55-
pub fn impl_items(&self) -> impl Iterator<Item = ImplItemId> {
56-
self.impl_items.to_vec().into_iter()
56+
57+
pub fn impl_items(&self) -> impl Iterator<Item = ImplItemId> + '_ {
58+
self.impl_items.iter().copied()
5759
}
58-
pub fn foreign_items(&self) -> impl Iterator<Item = ForeignItemId> {
59-
self.foreign_items.to_vec().into_iter()
60+
61+
pub fn foreign_items(&self) -> impl Iterator<Item = ForeignItemId> + '_ {
62+
self.foreign_items.iter().copied()
6063
}
6164
}
6265

0 commit comments

Comments
 (0)