Skip to content

Commit 81a5bd1

Browse files
committed
Update Region outside of ./compiler
1 parent be801b5 commit 81a5bd1

11 files changed

Lines changed: 24 additions & 5 deletions

File tree

src/librustdoc/clean/auto_trait.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ use rustc_data_structures::thin_vec::ThinVec;
33
use rustc_hir as hir;
44
use rustc_infer::infer::region_constraints::{ConstraintKind, RegionConstraintData};
55
use rustc_middle::bug;
6-
use rustc_middle::ty::{self, Region, Ty, fold_regions};
6+
use rustc_middle::ty::{self, Region, RegionUtilitiesExt, Ty, fold_regions};
77
use rustc_span::def_id::DefId;
88
use rustc_span::symbol::{Symbol, kw};
99
use rustc_trait_selection::traits::auto_trait::{self, RegionTarget};

src/librustdoc/clean/mod.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,8 @@ use rustc_hir_analysis::{lower_const_arg_for_rustdoc, lower_ty};
4747
use rustc_middle::metadata::Reexport;
4848
use rustc_middle::middle::resolve_bound_vars as rbv;
4949
use rustc_middle::ty::{
50-
self, AdtKind, GenericArgsRef, Ty, TyCtxt, TypeVisitableExt, TypingMode, Unnormalized,
50+
self, AdtKind, GenericArgsRef, RegionUtilitiesExt, Ty, TyCtxt, TypeVisitableExt, TypingMode,
51+
Unnormalized,
5152
};
5253
use rustc_middle::{bug, span_bug};
5354
use rustc_span::ExpnKind;

src/tools/clippy/clippy_lints/src/eta_reduction.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ use rustc_infer::infer::TyCtxtInferExt;
1010
use rustc_lint::{LateContext, LateLintPass};
1111
use rustc_middle::ty::adjustment::{Adjust, DerefAdjustKind};
1212
use rustc_middle::ty::{
13+
RegionUtilitiesExt,
1314
self, Binder, ClosureKind, FnSig, GenericArg, GenericArgKind, List, Region, Ty, TypeVisitableExt, TypeckResults,
1415
};
1516
use rustc_session::declare_lint_pass;

src/tools/clippy/clippy_lints/src/operators/identity_op.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ use rustc_hir::def::{DefKind, Res};
77
use rustc_hir::{BinOpKind, Expr, ExprKind, Node, Path, QPath};
88
use rustc_lint::LateContext;
99
use rustc_middle::ty;
10+
use rustc_middle::ty::RegionUtilitiesExt;
1011
use rustc_span::{Span, SyntaxContext, kw};
1112

1213
use super::IDENTITY_OP;

src/tools/clippy/clippy_lints/src/returns/let_and_return.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ use core::ops::ControlFlow;
88
use rustc_errors::Applicability;
99
use rustc_hir::{Block, Expr, PatKind, StmtKind};
1010
use rustc_lint::{LateContext, LintContext};
11-
use rustc_middle::ty::GenericArgKind;
11+
use rustc_middle::ty::{GenericArgKind, RegionUtilitiesExt};
1212
use rustc_span::edition::Edition;
1313

1414
use super::LET_AND_RETURN;

src/tools/clippy/clippy_utils/src/lib.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,7 @@ use rustc_middle::mir::{AggregateKind, Operand, RETURN_PLACE, Rvalue, StatementK
109109
use rustc_middle::ty::adjustment::{Adjust, Adjustment, AutoBorrow, DerefAdjustKind, PointerCoercion};
110110
use rustc_middle::ty::layout::IntegerExt;
111111
use rustc_middle::ty::{
112+
RegionUtilitiesExt,
112113
self as rustc_ty, Binder, BorrowKind, ClosureKind, EarlyBinder, GenericArgKind, GenericArgsRef, IntTy, Ty, TyCtxt,
113114
TypeFlags, TypeVisitableExt, TypeckResults, UintTy, UpvarCapture,
114115
};

src/tools/rust-analyzer/Cargo.lock

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1215,6 +1215,7 @@ version = "0.0.0"
12151215
dependencies = [
12161216
"dashmap",
12171217
"hashbrown 0.14.5",
1218+
"ra-ap-rustc_type_ir",
12181219
"rayon",
12191220
"rustc-hash 2.1.1",
12201221
"triomphe",

src/tools/rust-analyzer/crates/hir-ty/src/next_solver/interner.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,8 @@ use crate::{
5353
use super::{
5454
Binder, BoundExistentialPredicates, BoundTy, BoundTyKind, Clause, ClauseKind, Clauses, Const,
5555
ErrorGuaranteed, ExprConst, ExternalConstraints, GenericArg, GenericArgs, ParamConst, ParamEnv,
56-
ParamTy, PlaceholderConst, PlaceholderTy, PredefinedOpaques, Predicate, SolverDefId, Term, Ty,
57-
TyKind, Tys, Valtree, ValueConst,
56+
ParamTy, PlaceholderConst, PlaceholderTy, PredefinedOpaques, Predicate, RegionKind,
57+
SolverDefId, Term, Ty, TyKind, Tys, Valtree, ValueConst,
5858
abi::Safety,
5959
fold::{BoundVarReplacer, BoundVarReplacerDelegate, FnMutDelegate},
6060
generics::{Generics, generics},
@@ -1098,6 +1098,7 @@ impl<'db> Interner for DbInterner<'db> {
10981098
type LateParamRegion = LateParamRegion;
10991099
type BoundRegion = BoundRegion;
11001100
type PlaceholderRegion = PlaceholderRegion;
1101+
type InternedRegionKind = InternedRef<'db, RegionKind<'db>>;
11011102

11021103
type RegionAssumptions = RegionAssumptions<'db>;
11031104

src/tools/rust-analyzer/crates/intern/Cargo.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ rustc-hash.workspace = true
2020
triomphe.workspace = true
2121
rayon.workspace = true
2222

23+
ra-ap-rustc_type_ir.workspace = true
24+
2325
[lints]
2426
workspace = true
2527

src/tools/rust-analyzer/crates/intern/src/intern.rs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ use std::{
3434
use dashmap::{DashMap, SharedValue};
3535
use hashbrown::raw::RawTable;
3636
use rustc_hash::FxBuildHasher;
37+
use rustc_type_ir::inherent::IntoKind;
3738
use triomphe::{Arc, ArcBorrow};
3839

3940
type InternMap<T> = DashMap<Arc<T>, (), FxBuildHasher>;
@@ -318,6 +319,14 @@ impl<T: Display> Display for InternedRef<'_, T> {
318319
}
319320
}
320321

322+
impl<T: Clone> IntoKind for InternedRef<'_, T> {
323+
type Kind = T;
324+
325+
fn kind(self) -> Self::Kind {
326+
self.arc.get().clone()
327+
}
328+
}
329+
321330
pub struct InternStorage<T: ?Sized> {
322331
map: OnceLock<InternMap<T>>,
323332
}

0 commit comments

Comments
 (0)