about summary refs log tree commit diff
path: root/compiler/rustc_middle/src/traits
diff options
context:
space:
mode:
authorlcnr <rust@lcnr.de>2024-10-15 18:23:32 +0200
committerlcnr <rust@lcnr.de>2024-10-17 09:53:27 +0200
commitf3ce557fcd9f29893f1d00526edc5dd15c0088eb (patch)
tree831e6fac82f7a8d7bbed96333f3002f5ecfd27e8 /compiler/rustc_middle/src/traits
parent9334d85e696164ca2942132bcefcc792bdbd2f22 (diff)
downloadrust-f3ce557fcd9f29893f1d00526edc5dd15c0088eb.tar.gz
rust-f3ce557fcd9f29893f1d00526edc5dd15c0088eb.zip
`DropckOutlives` to `rustc_middle`
Diffstat (limited to 'compiler/rustc_middle/src/traits')
-rw-r--r--compiler/rustc_middle/src/traits/query.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/compiler/rustc_middle/src/traits/query.rs b/compiler/rustc_middle/src/traits/query.rs
index a7990b820e8..6439ab86915 100644
--- a/compiler/rustc_middle/src/traits/query.rs
+++ b/compiler/rustc_middle/src/traits/query.rs
@@ -51,6 +51,11 @@ pub mod type_op {
     pub struct ImpliedOutlivesBounds<'tcx> {
         pub ty: Ty<'tcx>,
     }
+
+    #[derive(Copy, Clone, Debug, Hash, PartialEq, Eq, HashStable, TypeFoldable, TypeVisitable)]
+    pub struct DropckOutlives<'tcx> {
+        pub dropped_ty: Ty<'tcx>,
+    }
 }
 
 pub type CanonicalAliasGoal<'tcx> = Canonical<'tcx, ty::ParamEnvAnd<'tcx, ty::AliasTy<'tcx>>>;
@@ -76,6 +81,9 @@ pub type CanonicalTypeOpNormalizeGoal<'tcx, T> =
 pub type CanonicalImpliedOutlivesBoundsGoal<'tcx> =
     Canonical<'tcx, ty::ParamEnvAnd<'tcx, type_op::ImpliedOutlivesBounds<'tcx>>>;
 
+pub type CanonicalDropckOutlivesGoal<'tcx> =
+    Canonical<'tcx, ty::ParamEnvAnd<'tcx, type_op::DropckOutlives<'tcx>>>;
+
 #[derive(Clone, Debug, Default, HashStable, TypeFoldable, TypeVisitable)]
 pub struct DropckOutlivesResult<'tcx> {
     pub kinds: Vec<GenericArg<'tcx>>,