Enum rustc_infer::errors::ActualImplExplNotes
source · pub enum ActualImplExplNotes<'tcx> {
Show 15 variants
ExpectedSignatureTwo {
leading_ellipsis: bool,
ty_or_sig: TyOrSig<'tcx>,
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>,
lifetime_1: usize,
lifetime_2: usize,
},
ExpectedSignatureAny {
leading_ellipsis: bool,
ty_or_sig: TyOrSig<'tcx>,
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>,
lifetime_1: usize,
},
ExpectedSignatureSome {
leading_ellipsis: bool,
ty_or_sig: TyOrSig<'tcx>,
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>,
lifetime_1: usize,
},
ExpectedSignatureNothing {
leading_ellipsis: bool,
ty_or_sig: TyOrSig<'tcx>,
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>,
},
ExpectedPassiveTwo {
leading_ellipsis: bool,
ty_or_sig: TyOrSig<'tcx>,
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>,
lifetime_1: usize,
lifetime_2: usize,
},
ExpectedPassiveAny {
leading_ellipsis: bool,
ty_or_sig: TyOrSig<'tcx>,
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>,
lifetime_1: usize,
},
ExpectedPassiveSome {
leading_ellipsis: bool,
ty_or_sig: TyOrSig<'tcx>,
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>,
lifetime_1: usize,
},
ExpectedPassiveNothing {
leading_ellipsis: bool,
ty_or_sig: TyOrSig<'tcx>,
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>,
},
ExpectedOtherTwo {
leading_ellipsis: bool,
ty_or_sig: TyOrSig<'tcx>,
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>,
lifetime_1: usize,
lifetime_2: usize,
},
ExpectedOtherAny {
leading_ellipsis: bool,
ty_or_sig: TyOrSig<'tcx>,
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>,
lifetime_1: usize,
},
ExpectedOtherSome {
leading_ellipsis: bool,
ty_or_sig: TyOrSig<'tcx>,
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>,
lifetime_1: usize,
},
ExpectedOtherNothing {
leading_ellipsis: bool,
ty_or_sig: TyOrSig<'tcx>,
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>,
},
ButActuallyImplementsTrait {
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>,
has_lifetime: bool,
lifetime: usize,
},
ButActuallyImplementedForTy {
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>,
has_lifetime: bool,
lifetime: usize,
ty: String,
},
ButActuallyTyImplements {
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>,
has_lifetime: bool,
lifetime: usize,
ty: String,
},
}Variants§
ExpectedSignatureTwo
Fields
§
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>ExpectedSignatureAny
Fields
§
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>ExpectedSignatureSome
Fields
§
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>ExpectedSignatureNothing
Fields
§
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>ExpectedPassiveTwo
Fields
§
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>ExpectedPassiveAny
Fields
§
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>ExpectedPassiveSome
Fields
§
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>ExpectedPassiveNothing
Fields
§
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>ExpectedOtherTwo
Fields
§
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>ExpectedOtherAny
Fields
§
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>ExpectedOtherSome
Fields
§
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>ExpectedOtherNothing
Fields
§
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>ButActuallyImplementsTrait
Fields
§
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>ButActuallyImplementedForTy
Fields
§
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>ButActuallyTyImplements
Fields
§
trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>Implementations§
source§impl<'tcx> ActualImplExplNotes<'tcx>
impl<'tcx> ActualImplExplNotes<'tcx>
pub fn new_expected( kind: ActualImplExpectedKind, lt_kind: ActualImplExpectedLifetimeKind, leading_ellipsis: bool, ty_or_sig: TyOrSig<'tcx>, trait_path: Highlighted<'tcx, TraitRefPrintOnlyTraitPath<'tcx>>, lifetime_1: usize, lifetime_2: usize ) -> Self
Trait Implementations§
source§impl<'tcx> AddToDiagnostic for ActualImplExplNotes<'tcx>
impl<'tcx> AddToDiagnostic for ActualImplExplNotes<'tcx>
source§fn add_to_diagnostic_with<__F>(self, diag: &mut Diagnostic, f: __F)where
__F: Fn(&mut Diagnostic, SubdiagnosticMessage) -> SubdiagnosticMessage,
fn add_to_diagnostic_with<__F>(self, diag: &mut Diagnostic, f: __F)where __F: Fn(&mut Diagnostic, SubdiagnosticMessage) -> SubdiagnosticMessage,
Add a subdiagnostic to an existing diagnostic where
f is invoked on every message used
(to optionally perform eager translation).source§fn add_to_diagnostic(self, diag: &mut Diagnostic)
fn add_to_diagnostic(self, diag: &mut Diagnostic)
Add a subdiagnostic to an existing diagnostic.
Auto Trait Implementations§
impl<'tcx> !RefUnwindSafe for ActualImplExplNotes<'tcx>
impl<'tcx> !Send for ActualImplExplNotes<'tcx>
impl<'tcx> !Sync for ActualImplExplNotes<'tcx>
impl<'tcx> Unpin for ActualImplExplNotes<'tcx>
impl<'tcx> !UnwindSafe for ActualImplExplNotes<'tcx>
Blanket Implementations§
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference’s “Type Layout” chapter for details on type layout guarantees.
Size: 264 bytes
Size for each variant:
ExpectedSignatureTwo: 263 bytesExpectedSignatureAny: 255 bytesExpectedSignatureSome: 255 bytesExpectedSignatureNothing: 247 bytesExpectedPassiveTwo: 263 bytesExpectedPassiveAny: 255 bytesExpectedPassiveSome: 255 bytesExpectedPassiveNothing: 247 bytesExpectedOtherTwo: 263 bytesExpectedOtherAny: 255 bytesExpectedOtherSome: 255 bytesExpectedOtherNothing: 247 bytesButActuallyImplementsTrait: 127 bytesButActuallyImplementedForTy: 151 bytesButActuallyTyImplements: 151 bytes