Skip to content

Commit 78f4ed3

Browse files
Remove associated type based effects logic
1 parent 03798ad commit 78f4ed3

File tree

1 file changed

+0
-44
lines changed

1 file changed

+0
-44
lines changed

core/src/marker.rs

-44
Original file line numberDiff line numberDiff line change
@@ -1069,47 +1069,3 @@ pub trait FnPtr: Copy + Clone {
10691069
pub macro SmartPointer($item:item) {
10701070
/* compiler built-in */
10711071
}
1072-
1073-
// Support traits and types for the desugaring of const traits and
1074-
// `~const` bounds. Not supposed to be used by anything other than
1075-
// the compiler.
1076-
#[doc(hidden)]
1077-
#[unstable(
1078-
feature = "effect_types",
1079-
issue = "none",
1080-
reason = "internal module for implementing effects"
1081-
)]
1082-
#[allow(missing_debug_implementations)] // these unit structs don't need `Debug` impls.
1083-
pub mod effects {
1084-
#[lang = "EffectsNoRuntime"]
1085-
pub struct NoRuntime;
1086-
#[lang = "EffectsMaybe"]
1087-
pub struct Maybe;
1088-
#[lang = "EffectsRuntime"]
1089-
pub struct Runtime;
1090-
1091-
#[lang = "EffectsCompat"]
1092-
pub trait Compat<#[rustc_runtime] const RUNTIME: bool> {}
1093-
1094-
impl Compat<false> for NoRuntime {}
1095-
impl Compat<true> for Runtime {}
1096-
impl<#[rustc_runtime] const RUNTIME: bool> Compat<RUNTIME> for Maybe {}
1097-
1098-
#[lang = "EffectsTyCompat"]
1099-
#[marker]
1100-
pub trait TyCompat<T: ?Sized> {}
1101-
1102-
impl<T: ?Sized> TyCompat<T> for T {}
1103-
impl<T: ?Sized> TyCompat<Maybe> for T {}
1104-
1105-
#[lang = "EffectsIntersection"]
1106-
pub trait Intersection {
1107-
#[lang = "EffectsIntersectionOutput"]
1108-
type Output: ?Sized;
1109-
}
1110-
1111-
// FIXME(effects): remove this after next trait solver lands
1112-
impl Intersection for () {
1113-
type Output = Maybe;
1114-
}
1115-
}

0 commit comments

Comments
 (0)