use crate::ty::fold::TypeFoldable;
use crate::ty::{self, Lift, ParamEnvAnd, Ty, TyCtxt};
-#[derive(Copy, Clone, Debug, Hash, PartialEq, Eq)]
+#[derive(Copy, Clone, Debug, Hash, PartialEq, Eq, HashStable, TypeFoldable, Lift)]
pub struct Normalize<T> {
pub value: T,
}
tcx.type_op_normalize_fn_sig(canonicalized)
}
}
-
-BraceStructTypeFoldableImpl! {
- impl<'tcx, T> TypeFoldable<'tcx> for Normalize<T> {
- value,
- } where T: TypeFoldable<'tcx>,
-}
-
-BraceStructLiftImpl! {
- impl<'tcx, T> Lift<'tcx> for Normalize<T> {
- type Lifted = Normalize<T::Lifted>;
- value,
- } where T: Lift<'tcx>,
-}
-
-impl_stable_hash_for! {
- impl<T> for struct Normalize<T> {
- value
- }
-}