Re-exportsยง
use std::borrow::Cow;๐use std::iter;๐use rustc_abi::CanonAbi;๐use rustc_abi::ExternAbi;๐use rustc_ast::util::parser::ExprPrecedence;๐use rustc_attr_ir::find_attr;๐use rustc_attr_ir::lang_items::LangItem;๐use rustc_data_structures::fx::FxHashMap;๐use rustc_data_structures::fx::FxIndexSet;๐use rustc_errors::Applicability;๐use rustc_errors::Diag;๐use rustc_errors::ErrorGuaranteed;๐use rustc_errors::StashKey;๐use rustc_errors::msg;๐use rustc_hir::def;๐use rustc_hir::def::CtorKind;๐use rustc_hir::def::Namespace;๐use rustc_hir::def::Res;๐use rustc_hir::def_id::DefId;๐use rustc_hir as hir;๐use rustc_hir::HirId;๐use rustc_hir_analysis::autoderef::Autoderef;๐use rustc_infer::infer::BoundRegionConversionTime;๐use rustc_infer::infer::DefineOpaqueTypes;๐use rustc_infer::traits::Obligation;๐use rustc_infer::traits::ObligationCause;๐use rustc_infer::traits::ObligationCauseCode;๐use rustc_infer::traits::WellFormedLoc;๐use rustc_middle::ty::adjustment::Adjust;๐use rustc_middle::ty::adjustment::Adjustment;๐use rustc_middle::ty::adjustment::AllowTwoPhase;๐use rustc_middle::ty::adjustment::AutoBorrow;๐use rustc_middle::ty::adjustment::AutoBorrowMutability;๐use rustc_middle::ty;๐use rustc_middle::ty::FnSig;๐use rustc_middle::ty::GenericArgsRef;๐use rustc_middle::ty::Ty;๐use rustc_middle::ty::TyCtxt;๐use rustc_middle::ty::TypeVisitableExt;๐use rustc_middle::ty::Unnormalized;๐use rustc_span::def_id::LocalDefId;๐use rustc_span::Ident;๐use rustc_span::Span;๐use rustc_span::bug;๐use rustc_span::sym;๐use rustc_target::spec::AbiMap;๐use rustc_target::spec::AbiMapping;๐use rustc_trait_selection::error_reporting::traits::DefIdOrName;๐use rustc_trait_selection::infer::InferCtxtExt as _;๐use rustc_trait_selection::traits::query::evaluate_obligation::InferCtxtExt as _;๐use tracing::debug;๐use tracing::instrument;๐use tracing::instrument;๐use super::method::MethodCallee;๐use super::method::probe::ProbeScope;๐use super::Expectation;๐use super::FnCtxt;๐use super::TupleArgumentsFlag;๐use crate::diagnostics;๐use crate::method::TreatNotYetDefinedOpaques;๐use crate::method::confirm::ConfirmContext;๐use crate::method::probe::IsSuggestion;๐use crate::method::probe::Mode;๐
Structsยง
Enumsยง
- Call
Step ๐ - State machine for typechecking a call, based on the callee type.
- Splat
Lowering ๐Info - Side-table info for lowering splatted function arguments.
Functionsยง
- check_
legal_ ๐trait_ for_ method_ call - Checks that it is legal to call methods of the trait corresponding
to
trait_id(this only cares about the trait, not the specific method that is called).