Use more slicing and slice interning over iterable interning

This commit is contained in:
León Orell Valerian Liehr
2025-06-13 01:14:41 +02:00
parent a58fdd18a2
commit 3a31f62421
2 changed files with 2 additions and 3 deletions

View File

@@ -276,8 +276,7 @@ fn create_generic_args<'tcx>(
tcx.impl_trait_header(parent).unwrap().trait_ref.instantiate_identity().args;
let trait_args = ty::GenericArgs::identity_for_item(tcx, sig_id);
let method_args =
tcx.mk_args_from_iter(trait_args.iter().skip(callee_generics.parent_count));
let method_args = tcx.mk_args(&trait_args[callee_generics.parent_count..]);
let method_args = build_generic_args(tcx, sig_id, def_id, method_args);
tcx.mk_args_from_iter(parent_args.iter().chain(method_args))

View File

@@ -588,7 +588,7 @@ impl<'tcx> GenericArgs<'tcx> {
}
pub fn truncate_to(&self, tcx: TyCtxt<'tcx>, generics: &ty::Generics) -> GenericArgsRef<'tcx> {
tcx.mk_args_from_iter(self.iter().take(generics.count()))
tcx.mk_args(&self[..generics.count()])
}
pub fn print_as_list(&self) -> String {