Expand description
Check properties that are required by built-in traits and set up data structures required by type-checking/codegen.
Re-exportsยง
use std::collections::BTreeMap;๐use rustc_attr_ir::lang_items::LangItem;๐use rustc_data_structures::fx::FxHashSet;๐use rustc_errors::ErrorGuaranteed;๐use rustc_errors::MultiSpan;๐use rustc_hir as hir;๐use rustc_hir::ItemKind;๐use rustc_hir::def_id::DefId;๐use rustc_hir::def_id::LocalDefId;๐use rustc_infer::infer;๐use rustc_infer::infer::InferCtxt;๐use rustc_infer::infer::RegionResolutionError;๐use rustc_infer::infer::SubregionOrigin;๐use rustc_infer::infer::TyCtxtInferExt;๐use rustc_infer::traits::Obligation;๐use rustc_infer::traits::TraitErrors;๐use rustc_middle::ty::adjustment::CoerceUnsizedInfo;๐use rustc_middle::ty::print::PrintTraitRefExt as _;๐use rustc_middle::ty;๐use rustc_middle::ty::Ty;๐use rustc_middle::ty::TyCtxt;๐use rustc_middle::ty::TypeVisitableExt;๐use rustc_middle::ty::TypingMode;๐use rustc_middle::ty::Unnormalized;๐use rustc_middle::ty::suggest_constraining_type_params;๐use rustc_span::DUMMY_SP;๐use rustc_span::Ident;๐use rustc_span::Span;๐use rustc_span::Symbol;๐use rustc_span::sym;๐use rustc_trait_selection::error_reporting::InferCtxtErrorExt;๐use rustc_trait_selection::traits::misc::ConstParamTyImplementationError;๐use rustc_trait_selection::traits::misc::CopyImplementationError;๐use rustc_trait_selection::traits::misc::InfringingFieldsReason;๐use rustc_trait_selection::traits::misc::type_allowed_to_implement_const_param_ty;๐use rustc_trait_selection::traits::misc::type_allowed_to_implement_copy;๐use rustc_trait_selection::traits;๐use rustc_trait_selection::traits::ObligationCause;๐use rustc_trait_selection::traits::ObligationCtxt;๐use tracing::debug;๐use crate::diagnostics;๐
Modulesยง
- coerce_
shared ๐
Structsยง
- Checker ๐
- Reborrow
Data ๐Field
Functionsยง
- assert_
field_ ๐type_ is_ copy - check_
trait ๐ - coerce_
unsized_ ๐info - collect_
reborrow_ ๐data_ fields - field_
type_ ๐is_ copy - field_
type_ ๐is_ reborrow - generic_
lifetime_ ๐params_ count - infringing_
fields_ ๐error - is_
from_ ๐coerce_ pointee_ derive - reborrow_
info ๐ - trait_
impl_ ๐lifetime_ params_ count - visit_
implementation_ ๐of_ coerce_ pointee_ validity - visit_
implementation_ ๐of_ coerce_ shared - visit_
implementation_ ๐of_ coerce_ unsized - visit_
implementation_ ๐of_ const_ param_ ty - visit_
implementation_ ๐of_ copy - visit_
implementation_ ๐of_ dispatch_ from_ dyn - visit_
implementation_ ๐of_ drop - visit_
implementation_ ๐of_ reborrow - visit_
implementation_ ๐of_ unpin