[−][src]Struct rustc_middle::ty::query::TyCtxtAt

pub struct TyCtxtAt<'tcx> {
    pub tcx: TyCtxt<'tcx>,
    pub span: Span,
}

Fields

tcx: TyCtxt<'tcx>span: Span

Implementations

impl<'tcx> TyCtxtAt<'tcx>[src]

pub fn layout_of(
    self,
    param_env_and_ty: ParamEnvAnd<'tcx, Ty<'tcx>>
) -> Result<TyAndLayout<'tcx>, LayoutError<'tcx>>
[src]

Computes the layout of a type. Note that this implicitly executes in "reveal all" mode.

impl<'tcx> TyCtxtAt<'tcx>[src]

pub fn trigger_delay_span_bug(
    self,
    key: impl IntoQueryParam<DefId>
) -> <trigger_delay_span_bug<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn hir_crate(
    self,
    key: CrateNum
) -> <hir_crate<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn index_hir(
    self,
    key: CrateNum
) -> <index_hir<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn hir_module_items(
    self,
    key: LocalDefId
) -> <hir_module_items<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn hir_owner(
    self,
    key: LocalDefId
) -> <hir_owner<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn hir_owner_nodes(
    self,
    key: LocalDefId
) -> <hir_owner_nodes<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn opt_const_param_of(
    self,
    key: LocalDefId
) -> <opt_const_param_of<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn type_of(
    self,
    key: impl IntoQueryParam<DefId>
) -> <type_of<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn analysis(
    self,
    key: CrateNum
) -> <analysis<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn generics_of(
    self,
    key: impl IntoQueryParam<DefId>
) -> <generics_of<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn predicates_of(
    self,
    key: impl IntoQueryParam<DefId>
) -> <predicates_of<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn projection_predicates(
    self,
    key: impl IntoQueryParam<DefId>
) -> <projection_predicates<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn native_libraries(
    self,
    key: CrateNum
) -> <native_libraries<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn lint_levels(
    self,
    key: CrateNum
) -> <lint_levels<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn parent_module_from_def_id(
    self,
    key: LocalDefId
) -> <parent_module_from_def_id<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn is_panic_runtime(
    self,
    key: CrateNum
) -> <is_panic_runtime<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn mir_keys(
    self,
    key: CrateNum
) -> <mir_keys<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn mir_const_qualif(
    self,
    key: impl IntoQueryParam<DefId>
) -> <mir_const_qualif<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn mir_const_qualif_const_arg(
    self,
    key: (LocalDefId, DefId)
) -> <mir_const_qualif_const_arg<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn mir_built(
    self,
    key: WithOptConstParam<LocalDefId>
) -> <mir_built<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn mir_const(
    self,
    key: WithOptConstParam<LocalDefId>
) -> <mir_const<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn mir_drops_elaborated_and_const_checked(
    self,
    key: WithOptConstParam<LocalDefId>
) -> <mir_drops_elaborated_and_const_checked<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn mir_promoted(
    self,
    key: WithOptConstParam<LocalDefId>
) -> <mir_promoted<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn optimized_mir(
    self,
    key: impl IntoQueryParam<DefId>
) -> <optimized_mir<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn optimized_mir_of_const_arg(
    self,
    key: (LocalDefId, DefId)
) -> <optimized_mir_of_const_arg<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn coverageinfo(
    self,
    key: impl IntoQueryParam<DefId>
) -> <coverageinfo<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn promoted_mir(
    self,
    key: impl IntoQueryParam<DefId>
) -> <promoted_mir<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn promoted_mir_of_const_arg(
    self,
    key: (LocalDefId, DefId)
) -> <promoted_mir_of_const_arg<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn erase_regions_ty(
    self,
    key: Ty<'tcx>
) -> <erase_regions_ty<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn wasm_import_module_map(
    self,
    key: CrateNum
) -> <wasm_import_module_map<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn predicates_defined_on(
    self,
    key: impl IntoQueryParam<DefId>
) -> <predicates_defined_on<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn explicit_predicates_of(
    self,
    key: impl IntoQueryParam<DefId>
) -> <explicit_predicates_of<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn inferred_outlives_of(
    self,
    key: impl IntoQueryParam<DefId>
) -> <inferred_outlives_of<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn super_predicates_of(
    self,
    key: impl IntoQueryParam<DefId>
) -> <super_predicates_of<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn type_param_predicates(
    self,
    key: (DefId, LocalDefId)
) -> <type_param_predicates<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn trait_def(
    self,
    key: impl IntoQueryParam<DefId>
) -> <trait_def<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn adt_def(
    self,
    key: impl IntoQueryParam<DefId>
) -> <adt_def<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn adt_destructor(
    self,
    key: impl IntoQueryParam<DefId>
) -> <adt_destructor<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn adt_sized_constraint(
    self,
    key: impl IntoQueryParam<DefId>
) -> <adt_sized_constraint<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn adt_dtorck_constraint(
    self,
    key: impl IntoQueryParam<DefId>
) -> <adt_dtorck_constraint<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn is_const_fn_raw(
    self,
    key: impl IntoQueryParam<DefId>
) -> <is_const_fn_raw<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn is_const_impl_raw(
    self,
    key: impl IntoQueryParam<DefId>
) -> <is_const_impl_raw<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn asyncness(
    self,
    key: impl IntoQueryParam<DefId>
) -> <asyncness<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn is_promotable_const_fn(
    self,
    key: impl IntoQueryParam<DefId>
) -> <is_promotable_const_fn<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn const_fn_is_allowed_fn_ptr(
    self,
    key: impl IntoQueryParam<DefId>
) -> <const_fn_is_allowed_fn_ptr<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn is_foreign_item(
    self,
    key: impl IntoQueryParam<DefId>
) -> <is_foreign_item<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn static_mutability(
    self,
    key: impl IntoQueryParam<DefId>
) -> <static_mutability<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn generator_kind(
    self,
    key: impl IntoQueryParam<DefId>
) -> <generator_kind<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn crate_variances(
    self,
    key: CrateNum
) -> <crate_variances<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn variances_of(
    self,
    key: impl IntoQueryParam<DefId>
) -> <variances_of<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn inferred_outlives_crate(
    self,
    key: CrateNum
) -> <inferred_outlives_crate<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn associated_item_def_ids(
    self,
    key: impl IntoQueryParam<DefId>
) -> <associated_item_def_ids<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn associated_item(
    self,
    key: impl IntoQueryParam<DefId>
) -> <associated_item<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn associated_items(
    self,
    key: impl IntoQueryParam<DefId>
) -> <associated_items<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn impl_trait_ref(
    self,
    key: impl IntoQueryParam<DefId>
) -> <impl_trait_ref<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn impl_polarity(
    self,
    key: impl IntoQueryParam<DefId>
) -> <impl_polarity<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn issue33140_self_ty(
    self,
    key: impl IntoQueryParam<DefId>
) -> <issue33140_self_ty<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn inherent_impls(
    self,
    key: impl IntoQueryParam<DefId>
) -> <inherent_impls<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn unsafety_check_result(
    self,
    key: LocalDefId
) -> <unsafety_check_result<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn unsafety_check_result_for_const_arg(
    self,
    key: (LocalDefId, DefId)
) -> <unsafety_check_result_for_const_arg<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn unsafe_derive_on_repr_packed(
    self,
    key: LocalDefId
) -> <unsafe_derive_on_repr_packed<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn fn_sig(
    self,
    key: impl IntoQueryParam<DefId>
) -> <fn_sig<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn lint_mod(
    self,
    key: LocalDefId
) -> <lint_mod<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn check_mod_attrs(
    self,
    key: LocalDefId
) -> <check_mod_attrs<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn check_mod_unstable_api_usage(
    self,
    key: LocalDefId
) -> <check_mod_unstable_api_usage<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn check_mod_const_bodies(
    self,
    key: LocalDefId
) -> <check_mod_const_bodies<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn check_mod_loops(
    self,
    key: LocalDefId
) -> <check_mod_loops<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn check_mod_item_types(
    self,
    key: LocalDefId
) -> <check_mod_item_types<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn check_mod_privacy(
    self,
    key: LocalDefId
) -> <check_mod_privacy<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn check_mod_intrinsics(
    self,
    key: LocalDefId
) -> <check_mod_intrinsics<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn check_mod_liveness(
    self,
    key: LocalDefId
) -> <check_mod_liveness<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn check_mod_impl_wf(
    self,
    key: LocalDefId
) -> <check_mod_impl_wf<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn collect_mod_item_types(
    self,
    key: LocalDefId
) -> <collect_mod_item_types<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn coerce_unsized_info(
    self,
    key: impl IntoQueryParam<DefId>
) -> <coerce_unsized_info<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn typeck_item_bodies(
    self,
    key: CrateNum
) -> <typeck_item_bodies<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn typeck(
    self,
    key: LocalDefId
) -> <typeck<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn typeck_const_arg(
    self,
    key: (LocalDefId, DefId)
) -> <typeck_const_arg<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn diagnostic_only_typeck(
    self,
    key: LocalDefId
) -> <diagnostic_only_typeck<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn used_trait_imports(
    self,
    key: LocalDefId
) -> <used_trait_imports<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn has_typeck_results(
    self,
    key: impl IntoQueryParam<DefId>
) -> <has_typeck_results<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn coherent_trait(
    self,
    key: impl IntoQueryParam<DefId>
) -> <coherent_trait<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn mir_borrowck(
    self,
    key: LocalDefId
) -> <mir_borrowck<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn mir_borrowck_const_arg(
    self,
    key: (LocalDefId, DefId)
) -> <mir_borrowck_const_arg<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn crate_inherent_impls(
    self,
    key: CrateNum
) -> <crate_inherent_impls<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn crate_inherent_impls_overlap_check(
    self,
    key: CrateNum
) -> <crate_inherent_impls_overlap_check<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn const_eval_raw(
    self,
    key: ParamEnvAnd<'tcx, GlobalId<'tcx>>
) -> <const_eval_raw<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn const_eval_validated(
    self,
    key: ParamEnvAnd<'tcx, GlobalId<'tcx>>
) -> <const_eval_validated<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn destructure_const(
    self,
    key: ParamEnvAnd<'tcx, &'tcx Const<'tcx>>
) -> <destructure_const<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn const_caller_location(
    self,
    key: (Symbol, u32, u32)
) -> <const_caller_location<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn lit_to_const(
    self,
    key: LitToConstInput<'tcx>
) -> <lit_to_const<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn check_match(
    self,
    key: impl IntoQueryParam<DefId>
) -> <check_match<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn privacy_access_levels(
    self,
    key: CrateNum
) -> <privacy_access_levels<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn check_private_in_public(
    self,
    key: CrateNum
) -> <check_private_in_public<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn reachable_set(
    self,
    key: CrateNum
) -> <reachable_set<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn region_scope_tree(
    self,
    key: impl IntoQueryParam<DefId>
) -> <region_scope_tree<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn mir_shims(
    self,
    key: InstanceDef<'tcx>
) -> <mir_shims<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn symbol_name(
    self,
    key: Instance<'tcx>
) -> <symbol_name<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn def_kind(
    self,
    key: impl IntoQueryParam<DefId>
) -> <def_kind<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn def_span(
    self,
    key: impl IntoQueryParam<DefId>
) -> <def_span<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn lookup_stability(
    self,
    key: impl IntoQueryParam<DefId>
) -> <lookup_stability<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn lookup_const_stability(
    self,
    key: impl IntoQueryParam<DefId>
) -> <lookup_const_stability<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn lookup_deprecation_entry(
    self,
    key: impl IntoQueryParam<DefId>
) -> <lookup_deprecation_entry<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn item_attrs(
    self,
    key: impl IntoQueryParam<DefId>
) -> <item_attrs<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn codegen_fn_attrs(
    self,
    key: impl IntoQueryParam<DefId>
) -> <codegen_fn_attrs<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn fn_arg_names(
    self,
    key: impl IntoQueryParam<DefId>
) -> <fn_arg_names<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn rendered_const(
    self,
    key: impl IntoQueryParam<DefId>
) -> <rendered_const<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn impl_parent(
    self,
    key: impl IntoQueryParam<DefId>
) -> <impl_parent<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn trait_of_item(
    self,
    key: impl IntoQueryParam<DefId>
) -> <trait_of_item<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn is_mir_available(
    self,
    key: impl IntoQueryParam<DefId>
) -> <is_mir_available<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn vtable_methods(
    self,
    key: PolyTraitRef<'tcx>
) -> <vtable_methods<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn codegen_fulfill_obligation(
    self,
    key: (ParamEnv<'tcx>, PolyTraitRef<'tcx>)
) -> <codegen_fulfill_obligation<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn all_local_trait_impls(
    self,
    key: CrateNum
) -> <all_local_trait_impls<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn trait_impls_of(
    self,
    key: impl IntoQueryParam<DefId>
) -> <trait_impls_of<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn specialization_graph_of(
    self,
    key: impl IntoQueryParam<DefId>
) -> <specialization_graph_of<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn object_safety_violations(
    self,
    key: impl IntoQueryParam<DefId>
) -> <object_safety_violations<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn param_env(
    self,
    key: impl IntoQueryParam<DefId>
) -> <param_env<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn param_env_reveal_all_normalized(
    self,
    key: impl IntoQueryParam<DefId>
) -> <param_env_reveal_all_normalized<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn is_copy_raw(
    self,
    key: ParamEnvAnd<'tcx, Ty<'tcx>>
) -> <is_copy_raw<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn is_sized_raw(
    self,
    key: ParamEnvAnd<'tcx, Ty<'tcx>>
) -> <is_sized_raw<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn is_freeze_raw(
    self,
    key: ParamEnvAnd<'tcx, Ty<'tcx>>
) -> <is_freeze_raw<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn needs_drop_raw(
    self,
    key: ParamEnvAnd<'tcx, Ty<'tcx>>
) -> <needs_drop_raw<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn has_structural_eq_impls(
    self,
    key: Ty<'tcx>
) -> <has_structural_eq_impls<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn adt_drop_tys(
    self,
    key: impl IntoQueryParam<DefId>
) -> <adt_drop_tys<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn layout_raw(
    self,
    key: ParamEnvAnd<'tcx, Ty<'tcx>>
) -> <layout_raw<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn dylib_dependency_formats(
    self,
    key: CrateNum
) -> <dylib_dependency_formats<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn dependency_formats(
    self,
    key: CrateNum
) -> <dependency_formats<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn is_compiler_builtins(
    self,
    key: CrateNum
) -> <is_compiler_builtins<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn has_global_allocator(
    self,
    key: CrateNum
) -> <has_global_allocator<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn has_panic_handler(
    self,
    key: CrateNum
) -> <has_panic_handler<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn is_profiler_runtime(
    self,
    key: CrateNum
) -> <is_profiler_runtime<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn panic_strategy(
    self,
    key: CrateNum
) -> <panic_strategy<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn is_no_builtins(
    self,
    key: CrateNum
) -> <is_no_builtins<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn symbol_mangling_version(
    self,
    key: CrateNum
) -> <symbol_mangling_version<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn extern_crate(
    self,
    key: impl IntoQueryParam<DefId>
) -> <extern_crate<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn specializes(
    self,
    key: (DefId, DefId)
) -> <specializes<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn in_scope_traits_map(
    self,
    key: LocalDefId
) -> <in_scope_traits_map<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn module_exports(
    self,
    key: LocalDefId
) -> <module_exports<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn impl_defaultness(
    self,
    key: impl IntoQueryParam<DefId>
) -> <impl_defaultness<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn check_item_well_formed(
    self,
    key: LocalDefId
) -> <check_item_well_formed<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn check_trait_item_well_formed(
    self,
    key: LocalDefId
) -> <check_trait_item_well_formed<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn check_impl_item_well_formed(
    self,
    key: LocalDefId
) -> <check_impl_item_well_formed<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn reachable_non_generics(
    self,
    key: CrateNum
) -> <reachable_non_generics<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn is_reachable_non_generic(
    self,
    key: impl IntoQueryParam<DefId>
) -> <is_reachable_non_generic<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn is_unreachable_local_definition(
    self,
    key: impl IntoQueryParam<DefId>
) -> <is_unreachable_local_definition<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn upstream_monomorphizations(
    self,
    key: CrateNum
) -> <upstream_monomorphizations<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn upstream_monomorphizations_for(
    self,
    key: impl IntoQueryParam<DefId>
) -> <upstream_monomorphizations_for<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn upstream_drop_glue_for(
    self,
    key: SubstsRef<'tcx>
) -> <upstream_drop_glue_for<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn foreign_modules(
    self,
    key: CrateNum
) -> <foreign_modules<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn entry_fn(
    self,
    key: CrateNum
) -> <entry_fn<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn plugin_registrar_fn(
    self,
    key: CrateNum
) -> <plugin_registrar_fn<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn proc_macro_decls_static(
    self,
    key: CrateNum
) -> <proc_macro_decls_static<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn crate_disambiguator(
    self,
    key: CrateNum
) -> <crate_disambiguator<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn crate_hash(
    self,
    key: CrateNum
) -> <crate_hash<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn crate_host_hash(
    self,
    key: CrateNum
) -> <crate_host_hash<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn original_crate_name(
    self,
    key: CrateNum
) -> <original_crate_name<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn extra_filename(
    self,
    key: CrateNum
) -> <extra_filename<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn crate_extern_paths(
    self,
    key: CrateNum
) -> <crate_extern_paths<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn implementations_of_trait(
    self,
    key: (CrateNum, DefId)
) -> <implementations_of_trait<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn all_trait_implementations(
    self,
    key: CrateNum
) -> <all_trait_implementations<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn dllimport_foreign_items(
    self,
    key: CrateNum
) -> <dllimport_foreign_items<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn is_dllimport_foreign_item(
    self,
    key: impl IntoQueryParam<DefId>
) -> <is_dllimport_foreign_item<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn is_statically_included_foreign_item(
    self,
    key: impl IntoQueryParam<DefId>
) -> <is_statically_included_foreign_item<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn native_library_kind(
    self,
    key: impl IntoQueryParam<DefId>
) -> <native_library_kind<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn resolve_lifetimes(
    self,
    key: CrateNum
) -> <resolve_lifetimes<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn named_region_map(
    self,
    key: LocalDefId
) -> <named_region_map<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn is_late_bound_map(
    self,
    key: LocalDefId
) -> <is_late_bound_map<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn object_lifetime_defaults_map(
    self,
    key: LocalDefId
) -> <object_lifetime_defaults_map<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn visibility(
    self,
    key: impl IntoQueryParam<DefId>
) -> <visibility<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn dep_kind(
    self,
    key: CrateNum
) -> <dep_kind<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn crate_name(
    self,
    key: CrateNum
) -> <crate_name<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn item_children(
    self,
    key: impl IntoQueryParam<DefId>
) -> <item_children<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn extern_mod_stmt_cnum(
    self,
    key: LocalDefId
) -> <extern_mod_stmt_cnum<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn get_lib_features(
    self,
    key: CrateNum
) -> <get_lib_features<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn defined_lib_features(
    self,
    key: CrateNum
) -> <defined_lib_features<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn get_lang_items(
    self,
    key: CrateNum
) -> <get_lang_items<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn all_diagnostic_items(
    self,
    key: CrateNum
) -> <all_diagnostic_items<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn defined_lang_items(
    self,
    key: CrateNum
) -> <defined_lang_items<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn diagnostic_items(
    self,
    key: CrateNum
) -> <diagnostic_items<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn missing_lang_items(
    self,
    key: CrateNum
) -> <missing_lang_items<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn visible_parent_map(
    self,
    key: CrateNum
) -> <visible_parent_map<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn missing_extern_crate_item(
    self,
    key: CrateNum
) -> <missing_extern_crate_item<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn used_crate_source(
    self,
    key: CrateNum
) -> <used_crate_source<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn postorder_cnums(
    self,
    key: CrateNum
) -> <postorder_cnums<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn upvars_mentioned(
    self,
    key: impl IntoQueryParam<DefId>
) -> <upvars_mentioned<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn maybe_unused_trait_import(
    self,
    key: LocalDefId
) -> <maybe_unused_trait_import<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn maybe_unused_extern_crates(
    self,
    key: CrateNum
) -> <maybe_unused_extern_crates<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn names_imported_by_glob_use(
    self,
    key: LocalDefId
) -> <names_imported_by_glob_use<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn stability_index(
    self,
    key: CrateNum
) -> <stability_index<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn all_crate_nums(
    self,
    key: CrateNum
) -> <all_crate_nums<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn all_traits(
    self,
    key: CrateNum
) -> <all_traits<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn exported_symbols(
    self,
    key: CrateNum
) -> <exported_symbols<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn collect_and_partition_mono_items(
    self,
    key: CrateNum
) -> <collect_and_partition_mono_items<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn is_codegened_item(
    self,
    key: impl IntoQueryParam<DefId>
) -> <is_codegened_item<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn codegen_unit(
    self,
    key: Symbol
) -> <codegen_unit<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn unused_generic_params(
    self,
    key: impl IntoQueryParam<DefId>
) -> <unused_generic_params<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn backend_optimization_level(
    self,
    key: CrateNum
) -> <backend_optimization_level<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn output_filenames(
    self,
    key: CrateNum
) -> <output_filenames<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn normalize_projection_ty(
    self,
    key: CanonicalProjectionGoal<'tcx>
) -> <normalize_projection_ty<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn normalize_generic_arg_after_erasing_regions(
    self,
    key: ParamEnvAnd<'tcx, GenericArg<'tcx>>
) -> <normalize_generic_arg_after_erasing_regions<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn implied_outlives_bounds(
    self,
    key: CanonicalTyGoal<'tcx>
) -> <implied_outlives_bounds<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn dropck_outlives(
    self,
    key: CanonicalTyGoal<'tcx>
) -> <dropck_outlives<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn evaluate_obligation(
    self,
    key: CanonicalPredicateGoal<'tcx>
) -> <evaluate_obligation<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn evaluate_goal(
    self,
    key: ChalkCanonicalGoal<'tcx>
) -> <evaluate_goal<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn type_implements_trait(
    self,
    key: (DefId, Ty<'tcx>, SubstsRef<'tcx>, ParamEnv<'tcx>)
) -> <type_implements_trait<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn type_op_ascribe_user_type(
    self,
    key: CanonicalTypeOpAscribeUserTypeGoal<'tcx>
) -> <type_op_ascribe_user_type<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn type_op_eq(
    self,
    key: CanonicalTypeOpEqGoal<'tcx>
) -> <type_op_eq<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn type_op_subtype(
    self,
    key: CanonicalTypeOpSubtypeGoal<'tcx>
) -> <type_op_subtype<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn type_op_prove_predicate(
    self,
    key: CanonicalTypeOpProvePredicateGoal<'tcx>
) -> <type_op_prove_predicate<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn type_op_normalize_ty(
    self,
    key: CanonicalTypeOpNormalizeGoal<'tcx, Ty<'tcx>>
) -> <type_op_normalize_ty<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn type_op_normalize_predicate(
    self,
    key: CanonicalTypeOpNormalizeGoal<'tcx, Predicate<'tcx>>
) -> <type_op_normalize_predicate<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn type_op_normalize_poly_fn_sig(
    self,
    key: CanonicalTypeOpNormalizeGoal<'tcx, PolyFnSig<'tcx>>
) -> <type_op_normalize_poly_fn_sig<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn type_op_normalize_fn_sig(
    self,
    key: CanonicalTypeOpNormalizeGoal<'tcx, FnSig<'tcx>>
) -> <type_op_normalize_fn_sig<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn subst_and_check_impossible_predicates(
    self,
    key: (DefId, SubstsRef<'tcx>)
) -> <subst_and_check_impossible_predicates<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn method_autoderef_steps(
    self,
    key: CanonicalTyGoal<'tcx>
) -> <method_autoderef_steps<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn supported_target_features(
    self,
    key: CrateNum
) -> <supported_target_features<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn instance_def_size_estimate(
    self,
    key: InstanceDef<'tcx>
) -> <instance_def_size_estimate<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn features_query(
    self,
    key: CrateNum
) -> <features_query<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn resolve_instance(
    self,
    key: ParamEnvAnd<'tcx, (DefId, SubstsRef<'tcx>)>
) -> <resolve_instance<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn resolve_instance_of_const_arg(
    self,
    key: ParamEnvAnd<'tcx, (LocalDefId, DefId, SubstsRef<'tcx>)>
) -> <resolve_instance_of_const_arg<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

pub fn normalize_opaque_types(
    self,
    key: &'tcx List<Predicate<'tcx>>
) -> <normalize_opaque_types<'tcx> as QueryConfig<TyCtxt<'tcx>>>::Stored
[src]

impl<'tcx> TyCtxtAt<'tcx>[src]

pub fn ty_error(self) -> Ty<'tcx>[src]

Constructs a TyKind::Error type and registers a delay_span_bug to ensure it gets used.

pub fn ty_error_with_message(self, msg: &str) -> Ty<'tcx>[src]

Constructs a TyKind::Error type and registers a delay_span_bug with the given `msg to ensure it gets used.

Methods from Deref<Target = TyCtxt<'tcx>>

pub fn require_lang_item(
    &self,
    lang_item: LangItem,
    span: Option<Span>
) -> DefId
[src]

Returns the DefId for a given LangItem. If not found, fatally aborts compilation.

pub fn fn_trait_kind_from_lang_item(&self, id: DefId) -> Option<ClosureKind>[src]

pub fn is_weak_lang_item(&self, item_def_id: DefId) -> bool[src]

pub fn reserve_alloc_id(&self) -> AllocId[src]

Obtains a new allocation ID that can be referenced but does not yet have an allocation backing it.

Make sure to call set_alloc_id_memory or set_alloc_id_same_memory before returning such an AllocId from a query.

fn reserve_and_set_dedup(&self, alloc: GlobalAlloc<'tcx>) -> AllocId[src]

Reserves a new ID if this allocation has not been dedup-reserved before. Should only be used for function pointers and statics, we don't want to dedup IDs for "real" memory!

pub fn create_static_alloc(&self, static_id: DefId) -> AllocId[src]

Generates an AllocId for a static or return a cached one in case this function has been called on the same static before.

pub fn create_fn_alloc(&self, instance: Instance<'tcx>) -> AllocId[src]

Generates an AllocId for a function. Depending on the function type, this might get deduplicated or assigned a new ID each time.

pub fn create_memory_alloc(&self, mem: &'tcx Allocation) -> AllocId[src]

Interns the Allocation and return a new AllocId, even if there's already an identical Allocation with a different AllocId. Statics with identical content will still point to the same Allocation, i.e., their data will be deduplicated through Allocation interning -- but they are different places in memory and as such need different IDs.

pub fn get_global_alloc(&self, id: AllocId) -> Option<GlobalAlloc<'tcx>>[src]

Returns None in case the AllocId is dangling. An InterpretCx can still have a local Allocation for that AllocId, but having such an AllocId in a constant is illegal and will likely ICE. This function exists to allow const eval to detect the difference between evaluation- local dangling pointers and allocations in constants/statics.

pub fn global_alloc(&self, id: AllocId) -> GlobalAlloc<'tcx>[src]

Panics in case the AllocId is dangling. Since that is impossible for AllocIds in constants (as all constants must pass interning and validation that check for dangling ids), this function is frequently used throughout rustc, but should not be used within the miri engine.

pub fn set_alloc_id_memory(&self, id: AllocId, mem: &'tcx Allocation)[src]

Freezes an AllocId created with reserve by pointing it at an Allocation. Trying to call this function twice, even with the same Allocation will ICE the compiler.

fn set_alloc_id_same_memory(&self, id: AllocId, mem: &'tcx Allocation)[src]

Freezes an AllocId created with reserve by pointing it at an Allocation. May be called twice for the same (AllocId, Allocation) pair.

fn suggest_constraint(
    &self,
    db: &mut DiagnosticBuilder<'_>,
    msg: &str,
    body_owner_def_id: DefId,
    proj_ty: &ProjectionTy<'tcx>,
    ty: Ty<'tcx>
) -> bool
[src]

fn expected_projection(
    &self,
    db: &mut DiagnosticBuilder<'_>,
    proj_ty: &ProjectionTy<'tcx>,
    values: &ExpectedFound<Ty<'tcx>>,
    body_owner_def_id: DefId,
    cause_code: &ObligationCauseCode<'_>
)
[src]

An associated type was expected and a different type was found.

We perform a few different checks to see what we can suggest:

  • In the current item, look for associated functions that return the expected type and suggest calling them. (Not a structured suggestion.)
  • If any of the item's generic bounds can be constrained, we suggest constraining the associated type to the found type.
  • If the associated type has a default type and was expected inside of a trait, we mention that this is disallowed.
  • If all other things fail, and the error is not because of a mismatch between the trait and the impl, we provide a generic help to constrain the assoc type or call an assoc fn that returns the type.

fn point_at_methods_that_satisfy_associated_type(
    &self,
    db: &mut DiagnosticBuilder<'_>,
    assoc_container_id: DefId,
    current_method_ident: Option<Symbol>,
    proj_ty_item_def_id: DefId,
    expected: Ty<'tcx>
) -> bool
[src]

fn point_at_associated_type(
    &self,
    db: &mut DiagnosticBuilder<'_>,
    body_owner_def_id: DefId,
    found: Ty<'tcx>
) -> bool
[src]

fn constrain_generic_bound_associated_type_structured_suggestion(
    &self,
    db: &mut DiagnosticBuilder<'_>,
    trait_ref: &TraitRef<'tcx>,
    bounds: GenericBounds<'_>,
    assoc: &AssocItem,
    ty: Ty<'tcx>,
    msg: &str
) -> bool
[src]

Given a slice of hir::GenericBounds, if any of them corresponds to the trait_ref requirement, provide a strucuted suggestion to constrain it to a given type ty.

fn constrain_associated_type_structured_suggestion(
    &self,
    db: &mut DiagnosticBuilder<'_>,
    span: Span,
    assoc: &AssocItem,
    ty: Ty<'tcx>,
    msg: &str
) -> bool
[src]

Given a span corresponding to a bound, provide a structured suggestion to set an associated type to a given type ty.

pub fn liberate_late_bound_regions<T>(
    &self,
    all_outlive_scope: DefId,
    value: &Binder<T>
) -> T where
    T: TypeFoldable<'tcx>, 
[src]

Replaces any late-bound regions bound in value with free variants attached to all_outlive_scope.

pub fn collect_constrained_late_bound_regions<T>(
    &self,
    value: &Binder<T>
) -> FxHashSet<BoundRegion> where
    T: TypeFoldable<'tcx>, 
[src]

Returns a set of all late-bound regions that are constrained by value, meaning that if we instantiate those LBR with variables and equate value with something else, those variables will also be equated.

pub fn collect_referenced_late_bound_regions<T>(
    &self,
    value: &Binder<T>
) -> FxHashSet<BoundRegion> where
    T: TypeFoldable<'tcx>, 
[src]

Returns a set of all late-bound regions that appear in value anywhere.

fn collect_late_bound_regions<T>(
    &self,
    value: &Binder<T>,
    just_constraint: bool
) -> FxHashSet<BoundRegion> where
    T: TypeFoldable<'tcx>, 
[src]

pub fn is_static(&self, def_id: DefId) -> bool[src]

Returns true if the node pointed to by def_id is a static item.

pub fn is_thread_local_static(&self, def_id: DefId) -> bool[src]

Returns true if this is a static item with the #[thread_local] attribute.

pub fn is_mutable_static(&self, def_id: DefId) -> bool[src]

Returns true if the node pointed to by def_id is a mutable static item.

pub fn static_ptr_ty(&self, def_id: DefId) -> Ty<'tcx>[src]

Get the type of the pointer to the static that we use in MIR.

pub fn consider_optimizing<T: Fn() -> String>(&self, msg: T) -> bool[src]

pub fn is_suitable_region(&self, region: Region<'tcx>) -> Option<FreeRegionInfo>[src]

pub fn return_type_impl_or_dyn_traits(
    &self,
    scope_def_id: LocalDefId
) -> Vec<&'tcx Ty<'tcx>>
[src]

Given a DefId for an fn, return all the dyn and impl traits in its return type.

pub fn return_type_impl_trait(
    &self,
    scope_def_id: LocalDefId
) -> Option<(Ty<'tcx>, Span)>
[src]

pub fn is_bound_region_in_impl_item(
    &self,
    suitable_region_binding_scope: LocalDefId
) -> bool
[src]

pub fn has_strict_asm_symbol_naming(&self) -> bool[src]

Determines whether identifiers in the assembly have strict naming rules. Currently, only NVPTX* targets need it.

pub fn caller_location_ty(&self) -> Ty<'tcx>[src]

Returns &'static core::panic::Location<'static>.

pub fn article_and_description(
    &self,
    def_id: DefId
) -> (&'static str, &'static str)
[src]

Returns a displayable description and article for the given def_id (e.g. ("a", "struct")).

Trait Implementations

impl<'tcx> Clone for TyCtxtAt<'tcx>[src]

impl<'tcx> Copy for TyCtxtAt<'tcx>[src]

impl<'tcx> Deref for TyCtxtAt<'tcx>[src]

type Target = TyCtxt<'tcx>

The resulting type after dereferencing.

Auto Trait Implementations

impl<'tcx> !RefUnwindSafe for TyCtxtAt<'tcx>

impl<'tcx> !Send for TyCtxtAt<'tcx>

impl<'tcx> !Sync for TyCtxtAt<'tcx>

impl<'tcx> Unpin for TyCtxtAt<'tcx>

impl<'tcx> !UnwindSafe for TyCtxtAt<'tcx>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized, 
[src]

impl<'tcx, T> ArenaAllocatable<'tcx, ()> for T where
    T: Copy, 
[src]

impl<T> Borrow<T> for T where
    T: ?Sized, 
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized, 
[src]

impl<'a, T> Captures<'a> for T where
    T: ?Sized, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> MaybeResult<T> for T[src]

type Error = !

impl<T> ToOwned for T where
    T: Clone, 
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> WithConstness for T[src]