diff --git a/crates/ra_hir/src/ty.rs b/crates/ra_hir/src/ty.rs index e6ecbe1ea7f..fae9c1e2285 100644 --- a/crates/ra_hir/src/ty.rs +++ b/crates/ra_hir/src/ty.rs @@ -223,7 +223,7 @@ impl Substs { } pub fn prefix(&self, n: usize) -> Substs { - Substs(self.0.iter().cloned().take(n).collect::>().into()) + Substs(self.0[..std::cmp::min(self.0.len(), n)].into()) } pub fn walk(&self, f: &mut impl FnMut(&Ty)) {