Skip to main content

Module diagnostics

Module diagnostics 

Source

Re-exportsยง

use rustc_data_structures::fx::FxHashSet; ๐Ÿ”’
use rustc_data_structures::fx::FxIndexSet; ๐Ÿ”’
use rustc_errors::formatting::DiagMessageAddArg; ๐Ÿ”’
use rustc_errors::Applicability; ๐Ÿ”’
use rustc_errors::Diag; ๐Ÿ”’
use rustc_errors::DiagCtxtHandle; ๐Ÿ”’
use rustc_errors::DiagMessage; ๐Ÿ”’
use rustc_errors::DiagStyledString; ๐Ÿ”’
use rustc_errors::Diagnostic; ๐Ÿ”’
use rustc_errors::IntoDiagArg; ๐Ÿ”’
use rustc_errors::Level; ๐Ÿ”’
use rustc_errors::MultiSpan; ๐Ÿ”’
use rustc_errors::Subdiagnostic; ๐Ÿ”’
use rustc_errors::msg; ๐Ÿ”’
use rustc_hir::def::DefKind; ๐Ÿ”’
use rustc_hir::def_id::DefId; ๐Ÿ”’
use rustc_hir::def_id::LocalDefId; ๐Ÿ”’
use rustc_hir::intravisit::Visitor; ๐Ÿ”’
use rustc_hir::intravisit::walk_ty; ๐Ÿ”’
use rustc_hir as hir; ๐Ÿ”’
use rustc_hir::AmbigArg; ๐Ÿ”’
use rustc_hir::FnRetTy; ๐Ÿ”’
use rustc_hir::GenericParamKind; ๐Ÿ”’
use rustc_hir::Node; ๐Ÿ”’
use rustc_macros::Diagnostic; ๐Ÿ”’
use rustc_macros::Subdiagnostic; ๐Ÿ”’
use rustc_middle::ty::print::PrintTraitRefExt as _; ๐Ÿ”’
use rustc_middle::ty::print::TraitRefPrintOnlyTraitPath; ๐Ÿ”’
use rustc_middle::ty; ๐Ÿ”’
use rustc_middle::ty::Binder; ๐Ÿ”’
use rustc_middle::ty::ClosureKind; ๐Ÿ”’
use rustc_middle::ty::FnSig; ๐Ÿ”’
use rustc_middle::ty::GenericArg; ๐Ÿ”’
use rustc_middle::ty::Region; ๐Ÿ”’
use rustc_middle::ty::Ty; ๐Ÿ”’
use rustc_middle::ty::TyCtxt; ๐Ÿ”’
use rustc_span::BytePos; ๐Ÿ”’
use rustc_span::Ident; ๐Ÿ”’
use rustc_span::Span; ๐Ÿ”’
use rustc_span::Symbol; ๐Ÿ”’
use rustc_span::kw; ๐Ÿ”’
use rustc_span::sym; ๐Ÿ”’
use crate::error_reporting::infer::ObligationCauseAsDiagArg; ๐Ÿ”’
use crate::error_reporting::infer::need_type_info::UnderspecifiedArgKind; ๐Ÿ”’
use crate::error_reporting::infer::nice_region_error::placeholder_error::Highlighted; ๐Ÿ”’
use rustc_errors::codes::*; ๐Ÿ”’

Modulesยง

note_and_explain ๐Ÿ”’

Structsยง

AddLifetimeParamsSuggestion ๐Ÿ”’
AddPreciseCapturingAndNameLifetimes ๐Ÿ”’
AddPreciseCapturingAndParams ๐Ÿ”’
AddPreciseCapturingForOvercapture
AddPreciseCapturingNameLifetimesAndParams ๐Ÿ”’
AmbiguousImpl ๐Ÿ”’
AmbiguousReturn ๐Ÿ”’
AnnotationRequired ๐Ÿ”’
AssocTypeWithSameName
ButNeedsToSatisfy ๐Ÿ”’
ClosureFnMutLabel ๐Ÿ”’
ClosureFnOnceLabel ๐Ÿ”’
ClosureKindMismatch ๐Ÿ”’
ConsiderBorrowingParamHelp ๐Ÿ”’
CoroClosureNotFn ๐Ÿ”’
FnConsiderCasting ๐Ÿ”’
FnConsiderCastingBoth ๐Ÿ”’
FnItemsAreDistinct ๐Ÿ”’
FnUniqTypes ๐Ÿ”’
FulfillReqLifetime ๐Ÿ”’
InferenceBadError ๐Ÿ”’
InherentProjectionNormalizationOverflow ๐Ÿ”’
IntroducesStaticBecauseUnmetLifetimeReq ๐Ÿ”’
LfBoundNotSatisfied ๐Ÿ”’
LifetimeMismatch ๐Ÿ”’
MismatchedStaticLifetime ๐Ÿ”’
NegativePositiveConflict ๐Ÿ”’
NonGenericOpaqueTypeParam ๐Ÿ”’
OpaqueCapturesLifetime ๐Ÿ”’
OutlivesBound ๐Ÿ”’
OutlivesContent ๐Ÿ”’
RefLongerThanData ๐Ÿ”’
SuggestTuplePatternMany ๐Ÿ”’
SuggestTuplePatternOne ๐Ÿ”’
TraitImplDiff ๐Ÿ”’
TraitPlaceholderMismatch ๐Ÿ”’
UnableToConstructConstantValue ๐Ÿ”’

Enumsยง

ActualImplExpectedKind ๐Ÿ”’
ActualImplExpectedLifetimeKind ๐Ÿ”’
ActualImplExplNotes ๐Ÿ”’
AddPreciseCapturing ๐Ÿ”’
AdjustSignatureBorrow ๐Ÿ”’
ConsiderAddingAwait ๐Ÿ”’
DoesNotOutliveStaticFromImpl ๐Ÿ”’
ExplicitLifetimeRequired ๐Ÿ”’
FunctionPointerSuggestion ๐Ÿ”’
ImplicitStaticLifetimeSubdiag ๐Ÿ”’
LifetimeMismatchLabels ๐Ÿ”’
ObligationCauseFailureCode
PlaceholderRelationLfNotSatisfied ๐Ÿ”’
RegionOriginNote ๐Ÿ”’
SourceKindSubdiag ๐Ÿ”’
SpecifyGenericParamsSuggestion ๐Ÿ”’
Suggestion to specify generic parameter(s) via ::<>.
SuggestAccessingField ๐Ÿ”’
SuggestRemoveSemiOrReturnBinding ๐Ÿ”’
TyOrSig ๐Ÿ”’
TypeErrorAdditionalDiags
WhereClauseSuggestions ๐Ÿ”’

Functionsยง

impl_trait_overcapture_suggestion
Given a set of captured DefId for an RPIT (opaque_def_id) and a given function (fn_def_id), try to suggest adding + use<...> to capture just the specified parameters. If one of those parameters is an APIT, then try to suggest turning it into a regular type parameter.