Use more slicing and slice interning over iterable interning
This commit is contained in:
@@ -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))
|
||||
|
||||
@@ -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 {
|
||||
|
||||
Reference in New Issue
Block a user