| <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `HirDatabase` trait in crate `hir`."><title>HirDatabase in hir::db - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../static.files/rustdoc-84e720fa.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="hir" data-themes="" data-resource-suffix="" data-rustdoc-version="1.89.0 (29483883e 2025-08-04)" data-channel="1.89.0" data-search-js="search-92309212.js" data-settings-js="settings-5514c975.js" ><script src="../../static.files/storage-4e99c027.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-fd3af306.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-32bb7600.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-6580c154.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-044be391.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../hir/index.html">hir</a><span class="version">0.0.0</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">HirDatabase</a></h2><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.adt_variance" title="adt_variance">adt_variance</a></li><li><a href="#tymethod.borrowck" title="borrowck">borrowck</a></li><li><a href="#tymethod.callable_item_signature" title="callable_item_signature">callable_item_signature</a></li><li><a href="#tymethod.const_eval" title="const_eval">const_eval</a></li><li><a href="#tymethod.const_eval_discriminant" title="const_eval_discriminant">const_eval_discriminant</a></li><li><a href="#tymethod.const_eval_static" title="const_eval_static">const_eval_static</a></li><li><a href="#tymethod.const_param_ty" title="const_param_ty">const_param_ty</a></li><li><a href="#tymethod.const_param_ty_ns" title="const_param_ty_ns">const_param_ty_ns</a></li><li><a href="#tymethod.const_param_ty_with_diagnostics" title="const_param_ty_with_diagnostics">const_param_ty_with_diagnostics</a></li><li><a href="#tymethod.dyn_compatibility_of_trait" title="dyn_compatibility_of_trait">dyn_compatibility_of_trait</a></li><li><a href="#tymethod.field_types" title="field_types">field_types</a></li><li><a href="#tymethod.field_types_ns" title="field_types_ns">field_types_ns</a></li><li><a href="#tymethod.field_types_with_diagnostics" title="field_types_with_diagnostics">field_types_with_diagnostics</a></li><li><a href="#tymethod.fn_def_variance" title="fn_def_variance">fn_def_variance</a></li><li><a href="#tymethod.generic_defaults" title="generic_defaults">generic_defaults</a></li><li><a href="#tymethod.generic_defaults_ns" title="generic_defaults_ns">generic_defaults_ns</a></li><li><a href="#tymethod.generic_defaults_ns_with_diagnostics" title="generic_defaults_ns_with_diagnostics">generic_defaults_ns_with_diagnostics</a></li><li><a href="#tymethod.generic_defaults_with_diagnostics" title="generic_defaults_with_diagnostics">generic_defaults_with_diagnostics</a></li><li><a href="#tymethod.generic_predicates" title="generic_predicates">generic_predicates</a></li><li><a href="#tymethod.generic_predicates_for_param" title="generic_predicates_for_param">generic_predicates_for_param</a></li><li><a href="#tymethod.generic_predicates_for_param_ns" title="generic_predicates_for_param_ns">generic_predicates_for_param_ns</a></li><li><a href="#tymethod.generic_predicates_ns" title="generic_predicates_ns">generic_predicates_ns</a></li><li><a href="#tymethod.generic_predicates_without_parent" title="generic_predicates_without_parent">generic_predicates_without_parent</a></li><li><a href="#tymethod.generic_predicates_without_parent_with_diagnostics" title="generic_predicates_without_parent_with_diagnostics">generic_predicates_without_parent_with_diagnostics</a></li><li><a href="#tymethod.has_drop_glue" title="has_drop_glue">has_drop_glue</a></li><li><a href="#tymethod.impl_self_ty" title="impl_self_ty">impl_self_ty</a></li><li><a href="#tymethod.impl_self_ty_with_diagnostics" title="impl_self_ty_with_diagnostics">impl_self_ty_with_diagnostics</a></li><li><a href="#tymethod.impl_trait" title="impl_trait">impl_trait</a></li><li><a href="#tymethod.impl_trait_with_diagnostics" title="impl_trait_with_diagnostics">impl_trait_with_diagnostics</a></li><li><a href="#tymethod.incoherent_inherent_impl_crates" title="incoherent_inherent_impl_crates">incoherent_inherent_impl_crates</a></li><li><a href="#tymethod.infer" title="infer">infer</a></li><li><a href="#tymethod.inherent_impls_in_block" title="inherent_impls_in_block">inherent_impls_in_block</a></li><li><a href="#tymethod.inherent_impls_in_crate" title="inherent_impls_in_crate">inherent_impls_in_crate</a></li><li><a href="#tymethod.intern_closure" title="intern_closure">intern_closure</a></li><li><a href="#tymethod.intern_coroutine" title="intern_coroutine">intern_coroutine</a></li><li><a href="#tymethod.intern_impl_trait_id" title="intern_impl_trait_id">intern_impl_trait_id</a></li><li><a href="#tymethod.layout_of_adt" title="layout_of_adt">layout_of_adt</a></li><li><a href="#tymethod.layout_of_ty" title="layout_of_ty">layout_of_ty</a></li><li><a href="#tymethod.lookup_impl_method" title="lookup_impl_method">lookup_impl_method</a></li><li><a href="#tymethod.lookup_intern_closure" title="lookup_intern_closure">lookup_intern_closure</a></li><li><a href="#tymethod.lookup_intern_coroutine" title="lookup_intern_coroutine">lookup_intern_coroutine</a></li><li><a href="#tymethod.lookup_intern_impl_trait_id" title="lookup_intern_impl_trait_id">lookup_intern_impl_trait_id</a></li><li><a href="#tymethod.mir_body" title="mir_body">mir_body</a></li><li><a href="#tymethod.mir_body_for_closure" title="mir_body_for_closure">mir_body_for_closure</a></li><li><a href="#tymethod.monomorphized_mir_body" title="monomorphized_mir_body">monomorphized_mir_body</a></li><li><a href="#tymethod.monomorphized_mir_body_for_closure" title="monomorphized_mir_body_for_closure">monomorphized_mir_body_for_closure</a></li><li><a href="#tymethod.normalize_projection" title="normalize_projection">normalize_projection</a></li><li><a href="#tymethod.return_type_impl_traits" title="return_type_impl_traits">return_type_impl_traits</a></li><li><a href="#tymethod.return_type_impl_traits_ns" title="return_type_impl_traits_ns">return_type_impl_traits_ns</a></li><li><a href="#tymethod.target_data_layout" title="target_data_layout">target_data_layout</a></li><li><a href="#tymethod.trait_environment" title="trait_environment">trait_environment</a></li><li><a href="#tymethod.trait_environment_for_body" title="trait_environment_for_body">trait_environment_for_body</a></li><li><a href="#tymethod.trait_impls_in_block" title="trait_impls_in_block">trait_impls_in_block</a></li><li><a href="#tymethod.trait_impls_in_crate" title="trait_impls_in_crate">trait_impls_in_crate</a></li><li><a href="#tymethod.trait_impls_in_deps" title="trait_impls_in_deps">trait_impls_in_deps</a></li><li><a href="#tymethod.trait_solve" title="trait_solve">trait_solve</a></li><li><a href="#tymethod.ty" title="ty">ty</a></li><li><a href="#tymethod.type_alias_impl_traits" title="type_alias_impl_traits">type_alias_impl_traits</a></li><li><a href="#tymethod.type_alias_impl_traits_ns" title="type_alias_impl_traits_ns">type_alias_impl_traits_ns</a></li><li><a href="#tymethod.type_for_type_alias_with_diagnostics" title="type_for_type_alias_with_diagnostics">type_for_type_alias_with_diagnostics</a></li><li><a href="#tymethod.value_ty" title="value_ty">value_ty</a></li><li><a href="#tymethod.variances_of" title="variances_of">variances_of</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block trait-implementation"><li><a href="#impl-UnificationDatabase%3CInterner%3E-for-%26dyn+HirDatabase" title="UnificationDatabase<Interner>">UnificationDatabase<Interner></a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><div id="rustdoc-modnav"><h2><a href="index.html">In hir::db</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../index.html">hir</a>::<wbr><a href="index.html">db</a></div><h1>Trait <span class="trait">HirDatabase</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"></span></div><pre class="rust item-decl"><code>pub trait HirDatabase: <a class="trait" href="trait.DefDatabase.html" title="trait hir::db::DefDatabase">DefDatabase</a> + <a class="trait" href="https://doc.rust-lang.org/1.89.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> { |
| <details class="toggle type-contents-toggle"><summary class="hideme"><span>Show 62 methods</span></summary> // Required methods |
| fn <a href="#tymethod.infer" class="fn">infer</a><'db>(&'db self, def: DefWithBodyId) -> Arc<InferenceResult<'db>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.mir_body" class="fn">mir_body</a><'db>( |
| &'db self, |
| def: DefWithBodyId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Arc<<a class="struct" href="../mir/struct.MirBody.html" title="struct hir::mir::MirBody">MirBody</a>>, <a class="enum" href="../enum.MirLowerError.html" title="enum hir::MirLowerError">MirLowerError</a><'db>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.mir_body_for_closure" class="fn">mir_body_for_closure</a><'db>( |
| &'db self, |
| def: InternedClosureId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Arc<<a class="struct" href="../mir/struct.MirBody.html" title="struct hir::mir::MirBody">MirBody</a>>, <a class="enum" href="../enum.MirLowerError.html" title="enum hir::MirLowerError">MirLowerError</a><'db>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.monomorphized_mir_body" class="fn">monomorphized_mir_body</a><'db>( |
| &'db self, |
| def: DefWithBodyId, |
| subst: Substitution<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>, |
| env: Arc<TraitEnvironment<'db>>, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Arc<<a class="struct" href="../mir/struct.MirBody.html" title="struct hir::mir::MirBody">MirBody</a>>, <a class="enum" href="../enum.MirLowerError.html" title="enum hir::MirLowerError">MirLowerError</a><'db>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.monomorphized_mir_body_for_closure" class="fn">monomorphized_mir_body_for_closure</a><'db>( |
| &'db self, |
| def: InternedClosureId, |
| subst: Substitution<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>, |
| env: Arc<TraitEnvironment<'db>>, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Arc<<a class="struct" href="../mir/struct.MirBody.html" title="struct hir::mir::MirBody">MirBody</a>>, <a class="enum" href="../enum.MirLowerError.html" title="enum hir::MirLowerError">MirLowerError</a><'db>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.borrowck" class="fn">borrowck</a><'db>( |
| &'db self, |
| def: DefWithBodyId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Arc<[<a class="struct" href="../mir/struct.BorrowckResult.html" title="struct hir::mir::BorrowckResult">BorrowckResult</a>]>, <a class="enum" href="../enum.MirLowerError.html" title="enum hir::MirLowerError">MirLowerError</a><'db>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.const_eval" class="fn">const_eval</a><'db>( |
| &'db self, |
| def: GeneralConstId, |
| subst: Substitution<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>, |
| trait_env: <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Arc<TraitEnvironment<'db>>>, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Const<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>, <a class="enum" href="../enum.ConstEvalError.html" title="enum hir::ConstEvalError">ConstEvalError</a><'db>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.const_eval_static" class="fn">const_eval_static</a><'db>( |
| &'db self, |
| def: StaticId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Const<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>, <a class="enum" href="../enum.ConstEvalError.html" title="enum hir::ConstEvalError">ConstEvalError</a><'db>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.const_eval_discriminant" class="fn">const_eval_discriminant</a><'db>( |
| &'db self, |
| def: EnumVariantId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/1.89.0/std/primitive.i128.html">i128</a>, <a class="enum" href="../enum.ConstEvalError.html" title="enum hir::ConstEvalError">ConstEvalError</a><'db>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.lookup_impl_method" class="fn">lookup_impl_method</a><'db>( |
| &'db self, |
| env: Arc<TraitEnvironment<'db>>, |
| func: FunctionId, |
| fn_subst: <a class="struct" href="../next_solver/struct.GenericArgs.html" title="struct hir::next_solver::GenericArgs">GenericArgs</a><'db>, |
| ) -> (FunctionId, <a class="struct" href="../next_solver/struct.GenericArgs.html" title="struct hir::next_solver::GenericArgs">GenericArgs</a><'db>); |
| <span class="item-spacer"></span> fn <a href="#tymethod.layout_of_adt" class="fn">layout_of_adt</a><'db>( |
| &'db self, |
| def: AdtId, |
| args: <a class="struct" href="../next_solver/struct.GenericArgs.html" title="struct hir::next_solver::GenericArgs">GenericArgs</a><'db>, |
| trait_env: Arc<TraitEnvironment<'db>>, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Arc<LayoutData<RustcFieldIdx, RustcEnumVariantIdx>>, <a class="enum" href="../enum.LayoutError.html" title="enum hir::LayoutError">LayoutError</a>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.layout_of_ty" class="fn">layout_of_ty</a><'db>( |
| &'db self, |
| ty: <a class="struct" href="../next_solver/struct.Ty.html" title="struct hir::next_solver::Ty">Ty</a><'db>, |
| env: Arc<TraitEnvironment<'db>>, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Arc<LayoutData<RustcFieldIdx, RustcEnumVariantIdx>>, <a class="enum" href="../enum.LayoutError.html" title="enum hir::LayoutError">LayoutError</a>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.target_data_layout" class="fn">target_data_layout</a>( |
| &self, |
| krate: Crate, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Arc<TargetDataLayout>, TargetLoadError>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.dyn_compatibility_of_trait" class="fn">dyn_compatibility_of_trait</a>( |
| &self, |
| trait_: <a class="struct" href="../struct.TraitId.html" title="struct hir::TraitId">TraitId</a>, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="../enum.DynCompatibilityViolation.html" title="enum hir::DynCompatibilityViolation">DynCompatibilityViolation</a>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.ty" class="fn">ty</a><'db>(&'db self, def: TyDefId) -> EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, <a class="struct" href="../next_solver/struct.Ty.html" title="struct hir::next_solver::Ty">Ty</a><'db>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.type_for_type_alias_with_diagnostics" class="fn">type_for_type_alias_with_diagnostics</a><'db>( |
| &'db self, |
| def: TypeAliasId, |
| ) -> (EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, <a class="struct" href="../next_solver/struct.Ty.html" title="struct hir::next_solver::Ty">Ty</a><'db>>, <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ThinArc<<a class="primitive" href="https://doc.rust-lang.org/1.89.0/std/primitive.unit.html">()</a>, TyLoweringDiagnostic>>); |
| <span class="item-spacer"></span> fn <a href="#tymethod.value_ty" class="fn">value_ty</a><'db>( |
| &'db self, |
| def: ValueTyDefId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, <a class="struct" href="../next_solver/struct.Ty.html" title="struct hir::next_solver::Ty">Ty</a><'db>>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.impl_self_ty_with_diagnostics" class="fn">impl_self_ty_with_diagnostics</a><'db>( |
| &'db self, |
| def: ImplId, |
| ) -> (EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, <a class="struct" href="../next_solver/struct.Ty.html" title="struct hir::next_solver::Ty">Ty</a><'db>>, <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ThinArc<<a class="primitive" href="https://doc.rust-lang.org/1.89.0/std/primitive.unit.html">()</a>, TyLoweringDiagnostic>>); |
| <span class="item-spacer"></span> fn <a href="#tymethod.impl_self_ty" class="fn">impl_self_ty</a><'db>( |
| &'db self, |
| def: ImplId, |
| ) -> EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, <a class="struct" href="../next_solver/struct.Ty.html" title="struct hir::next_solver::Ty">Ty</a><'db>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.const_param_ty_with_diagnostics" class="fn">const_param_ty_with_diagnostics</a><'db>( |
| &'db self, |
| def: ConstParamId, |
| ) -> (<a class="struct" href="../next_solver/struct.Ty.html" title="struct hir::next_solver::Ty">Ty</a><'db>, <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ThinArc<<a class="primitive" href="https://doc.rust-lang.org/1.89.0/std/primitive.unit.html">()</a>, TyLoweringDiagnostic>>); |
| <span class="item-spacer"></span> fn <a href="#tymethod.const_param_ty" class="fn">const_param_ty</a>(&self, def: ConstParamId) -> Ty<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.impl_trait_with_diagnostics" class="fn">impl_trait_with_diagnostics</a><'db>( |
| &'db self, |
| def: ImplId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><(EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, TraitRef<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>>>, <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ThinArc<<a class="primitive" href="https://doc.rust-lang.org/1.89.0/std/primitive.unit.html">()</a>, TyLoweringDiagnostic>>)>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.impl_trait" class="fn">impl_trait</a><'db>( |
| &'db self, |
| def: ImplId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, TraitRef<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>>>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.field_types_with_diagnostics" class="fn">field_types_with_diagnostics</a><'db>( |
| &'db self, |
| var: <a class="enum" href="../diagnostics/enum.VariantId.html" title="enum hir::diagnostics::VariantId">VariantId</a>, |
| ) -> (Arc<ArenaMap<Idx<FieldData>, EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, <a class="struct" href="../next_solver/struct.Ty.html" title="struct hir::next_solver::Ty">Ty</a><'db>>>>, <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ThinArc<<a class="primitive" href="https://doc.rust-lang.org/1.89.0/std/primitive.unit.html">()</a>, TyLoweringDiagnostic>>); |
| <span class="item-spacer"></span> fn <a href="#tymethod.field_types" class="fn">field_types</a>( |
| &self, |
| var: <a class="enum" href="../diagnostics/enum.VariantId.html" title="enum hir::diagnostics::VariantId">VariantId</a>, |
| ) -> Arc<ArenaMap<Idx<FieldData>, Binders<Ty<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>>>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.callable_item_signature" class="fn">callable_item_signature</a><'db>( |
| &'db self, |
| def: CallableDefId, |
| ) -> EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, Binder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, FnSig<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>>>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.return_type_impl_traits" class="fn">return_type_impl_traits</a>( |
| &self, |
| def: FunctionId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Arc<Binders<ImplTraits>>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.type_alias_impl_traits" class="fn">type_alias_impl_traits</a>( |
| &self, |
| def: TypeAliasId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Arc<Binders<ImplTraits>>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.generic_predicates_for_param" class="fn">generic_predicates_for_param</a>( |
| &self, |
| def: GenericDefId, |
| param_id: TypeOrConstParamId, |
| assoc_name: <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.Name.html" title="struct hir::Name">Name</a>>, |
| ) -> GenericPredicates; |
| <span class="item-spacer"></span> fn <a href="#tymethod.generic_predicates" class="fn">generic_predicates</a>(&self, def: GenericDefId) -> GenericPredicates; |
| <span class="item-spacer"></span> fn <a href="#tymethod.generic_predicates_without_parent_with_diagnostics" class="fn">generic_predicates_without_parent_with_diagnostics</a><'db>( |
| &'db self, |
| def: GenericDefId, |
| ) -> (GenericPredicates<'db>, <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ThinArc<<a class="primitive" href="https://doc.rust-lang.org/1.89.0/std/primitive.unit.html">()</a>, TyLoweringDiagnostic>>); |
| <span class="item-spacer"></span> fn <a href="#tymethod.generic_predicates_without_parent" class="fn">generic_predicates_without_parent</a><'db>( |
| &'db self, |
| def: GenericDefId, |
| ) -> GenericPredicates<'db>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.trait_environment_for_body" class="fn">trait_environment_for_body</a><'db>( |
| &'db self, |
| def: DefWithBodyId, |
| ) -> Arc<TraitEnvironment<'db>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.trait_environment" class="fn">trait_environment</a><'db>( |
| &'db self, |
| def: GenericDefId, |
| ) -> Arc<TraitEnvironment<'db>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.generic_defaults_with_diagnostics" class="fn">generic_defaults_with_diagnostics</a>( |
| &self, |
| def: GenericDefId, |
| ) -> (GenericDefaults, <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ThinArc<<a class="primitive" href="https://doc.rust-lang.org/1.89.0/std/primitive.unit.html">()</a>, TyLoweringDiagnostic>>); |
| <span class="item-spacer"></span> fn <a href="#tymethod.generic_defaults" class="fn">generic_defaults</a>(&self, def: GenericDefId) -> GenericDefaults; |
| <span class="item-spacer"></span> fn <a href="#tymethod.inherent_impls_in_crate" class="fn">inherent_impls_in_crate</a>(&self, krate: Crate) -> Arc<InherentImpls>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.inherent_impls_in_block" class="fn">inherent_impls_in_block</a>( |
| &self, |
| block: BlockId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Arc<InherentImpls>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.incoherent_inherent_impl_crates" class="fn">incoherent_inherent_impl_crates</a>( |
| &self, |
| krate: Crate, |
| fp: <a class="enum" href="../enum.TyFingerprint.html" title="enum hir::TyFingerprint">TyFingerprint</a>, |
| ) -> SmallVec<[Crate; <a class="primitive" href="https://doc.rust-lang.org/1.89.0/std/primitive.array.html">2</a>]>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.trait_impls_in_crate" class="fn">trait_impls_in_crate</a>(&self, krate: Crate) -> Arc<TraitImpls>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.trait_impls_in_block" class="fn">trait_impls_in_block</a>(&self, block: BlockId) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Arc<TraitImpls>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.trait_impls_in_deps" class="fn">trait_impls_in_deps</a>(&self, krate: Crate) -> Arc<[Arc<TraitImpls>]>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.intern_impl_trait_id" class="fn">intern_impl_trait_id</a>(&self, id: ImplTraitId) -> InternedOpaqueTyId; |
| <span class="item-spacer"></span> fn <a href="#tymethod.intern_closure" class="fn">intern_closure</a>(&self, id: InternedClosure) -> InternedClosureId; |
| <span class="item-spacer"></span> fn <a href="#tymethod.intern_coroutine" class="fn">intern_coroutine</a>(&self, id: InternedCoroutine) -> InternedCoroutineId; |
| <span class="item-spacer"></span> fn <a href="#tymethod.fn_def_variance" class="fn">fn_def_variance</a>(&self, fn_def_id: CallableDefId) -> Variances<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.adt_variance" class="fn">adt_variance</a>(&self, adt_id: AdtId) -> Variances<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.variances_of" class="fn">variances_of</a>(&self, def: GenericDefId) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Arc<[<a class="enum" href="../enum.Variance.html" title="enum hir::Variance">Variance</a>]>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.normalize_projection" class="fn">normalize_projection</a>( |
| &self, |
| projection: ProjectionTy<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>, |
| env: Arc<TraitEnvironment<'_>>, |
| ) -> Ty<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.trait_solve" class="fn">trait_solve</a>( |
| &self, |
| krate: Crate, |
| block: <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><BlockId>, |
| goal: Canonical<InEnvironment<Goal<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>>>, |
| ) -> NextTraitSolveResult; |
| <span class="item-spacer"></span> fn <a href="#tymethod.has_drop_glue" class="fn">has_drop_glue</a>( |
| &self, |
| ty: Ty<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>, |
| env: Arc<TraitEnvironment<'_>>, |
| ) -> <a class="enum" href="../enum.DropGlue.html" title="enum hir::DropGlue">DropGlue</a>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.const_param_ty_ns" class="fn">const_param_ty_ns</a><'db>(&'db self, def: ConstParamId) -> <a class="struct" href="../next_solver/struct.Ty.html" title="struct hir::next_solver::Ty">Ty</a><'db>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.field_types_ns" class="fn">field_types_ns</a><'db>( |
| &'db self, |
| var: <a class="enum" href="../diagnostics/enum.VariantId.html" title="enum hir::diagnostics::VariantId">VariantId</a>, |
| ) -> Arc<ArenaMap<Idx<FieldData>, EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, <a class="struct" href="../next_solver/struct.Ty.html" title="struct hir::next_solver::Ty">Ty</a><'db>>>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.return_type_impl_traits_ns" class="fn">return_type_impl_traits_ns</a><'db>( |
| &'db self, |
| def: FunctionId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Arc<EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, ImplTraits<'db>>>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.type_alias_impl_traits_ns" class="fn">type_alias_impl_traits_ns</a><'db>( |
| &'db self, |
| def: TypeAliasId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Arc<EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, ImplTraits<'db>>>>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.generic_predicates_for_param_ns" class="fn">generic_predicates_for_param_ns</a><'db>( |
| &'db self, |
| def: GenericDefId, |
| param_id: TypeOrConstParamId, |
| assoc_name: <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.Name.html" title="struct hir::Name">Name</a>>, |
| ) -> GenericPredicates<'db>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.generic_predicates_ns" class="fn">generic_predicates_ns</a><'db>( |
| &'db self, |
| def: GenericDefId, |
| ) -> GenericPredicates<'db>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.generic_defaults_ns_with_diagnostics" class="fn">generic_defaults_ns_with_diagnostics</a><'db>( |
| &'db self, |
| def: GenericDefId, |
| ) -> (GenericDefaults<'db>, <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ThinArc<<a class="primitive" href="https://doc.rust-lang.org/1.89.0/std/primitive.unit.html">()</a>, TyLoweringDiagnostic>>); |
| <span class="item-spacer"></span> fn <a href="#tymethod.generic_defaults_ns" class="fn">generic_defaults_ns</a><'db>( |
| &'db self, |
| def: GenericDefId, |
| ) -> GenericDefaults<'db>; |
| <span class="item-spacer"></span> fn <a href="#tymethod.lookup_intern_impl_trait_id" class="fn">lookup_intern_impl_trait_id</a>(&self, id: InternedOpaqueTyId) -> ImplTraitId; |
| <span class="item-spacer"></span> fn <a href="#tymethod.lookup_intern_closure" class="fn">lookup_intern_closure</a>(&self, id: InternedClosureId) -> InternedClosure; |
| <span class="item-spacer"></span> fn <a href="#tymethod.lookup_intern_coroutine" class="fn">lookup_intern_coroutine</a>( |
| &self, |
| id: InternedCoroutineId, |
| ) -> InternedCoroutine; |
| </details>}</code></pre><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><section id="tymethod.infer" class="method"><h4 class="code-header">fn <a href="#tymethod.infer" class="fn">infer</a><'db>(&'db self, def: DefWithBodyId) -> Arc<InferenceResult<'db>></h4></section><section id="tymethod.mir_body" class="method"><h4 class="code-header">fn <a href="#tymethod.mir_body" class="fn">mir_body</a><'db>( |
| &'db self, |
| def: DefWithBodyId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Arc<<a class="struct" href="../mir/struct.MirBody.html" title="struct hir::mir::MirBody">MirBody</a>>, <a class="enum" href="../enum.MirLowerError.html" title="enum hir::MirLowerError">MirLowerError</a><'db>></h4></section><section id="tymethod.mir_body_for_closure" class="method"><h4 class="code-header">fn <a href="#tymethod.mir_body_for_closure" class="fn">mir_body_for_closure</a><'db>( |
| &'db self, |
| def: InternedClosureId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Arc<<a class="struct" href="../mir/struct.MirBody.html" title="struct hir::mir::MirBody">MirBody</a>>, <a class="enum" href="../enum.MirLowerError.html" title="enum hir::MirLowerError">MirLowerError</a><'db>></h4></section><section id="tymethod.monomorphized_mir_body" class="method"><h4 class="code-header">fn <a href="#tymethod.monomorphized_mir_body" class="fn">monomorphized_mir_body</a><'db>( |
| &'db self, |
| def: DefWithBodyId, |
| subst: Substitution<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>, |
| env: Arc<TraitEnvironment<'db>>, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Arc<<a class="struct" href="../mir/struct.MirBody.html" title="struct hir::mir::MirBody">MirBody</a>>, <a class="enum" href="../enum.MirLowerError.html" title="enum hir::MirLowerError">MirLowerError</a><'db>></h4></section><section id="tymethod.monomorphized_mir_body_for_closure" class="method"><h4 class="code-header">fn <a href="#tymethod.monomorphized_mir_body_for_closure" class="fn">monomorphized_mir_body_for_closure</a><'db>( |
| &'db self, |
| def: InternedClosureId, |
| subst: Substitution<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>, |
| env: Arc<TraitEnvironment<'db>>, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Arc<<a class="struct" href="../mir/struct.MirBody.html" title="struct hir::mir::MirBody">MirBody</a>>, <a class="enum" href="../enum.MirLowerError.html" title="enum hir::MirLowerError">MirLowerError</a><'db>></h4></section><section id="tymethod.borrowck" class="method"><h4 class="code-header">fn <a href="#tymethod.borrowck" class="fn">borrowck</a><'db>( |
| &'db self, |
| def: DefWithBodyId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Arc<[<a class="struct" href="../mir/struct.BorrowckResult.html" title="struct hir::mir::BorrowckResult">BorrowckResult</a>]>, <a class="enum" href="../enum.MirLowerError.html" title="enum hir::MirLowerError">MirLowerError</a><'db>></h4></section><section id="tymethod.const_eval" class="method"><h4 class="code-header">fn <a href="#tymethod.const_eval" class="fn">const_eval</a><'db>( |
| &'db self, |
| def: GeneralConstId, |
| subst: Substitution<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>, |
| trait_env: <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Arc<TraitEnvironment<'db>>>, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Const<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>, <a class="enum" href="../enum.ConstEvalError.html" title="enum hir::ConstEvalError">ConstEvalError</a><'db>></h4></section><section id="tymethod.const_eval_static" class="method"><h4 class="code-header">fn <a href="#tymethod.const_eval_static" class="fn">const_eval_static</a><'db>( |
| &'db self, |
| def: StaticId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Const<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>, <a class="enum" href="../enum.ConstEvalError.html" title="enum hir::ConstEvalError">ConstEvalError</a><'db>></h4></section><section id="tymethod.const_eval_discriminant" class="method"><h4 class="code-header">fn <a href="#tymethod.const_eval_discriminant" class="fn">const_eval_discriminant</a><'db>( |
| &'db self, |
| def: EnumVariantId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/1.89.0/std/primitive.i128.html">i128</a>, <a class="enum" href="../enum.ConstEvalError.html" title="enum hir::ConstEvalError">ConstEvalError</a><'db>></h4></section><section id="tymethod.lookup_impl_method" class="method"><h4 class="code-header">fn <a href="#tymethod.lookup_impl_method" class="fn">lookup_impl_method</a><'db>( |
| &'db self, |
| env: Arc<TraitEnvironment<'db>>, |
| func: FunctionId, |
| fn_subst: <a class="struct" href="../next_solver/struct.GenericArgs.html" title="struct hir::next_solver::GenericArgs">GenericArgs</a><'db>, |
| ) -> (FunctionId, <a class="struct" href="../next_solver/struct.GenericArgs.html" title="struct hir::next_solver::GenericArgs">GenericArgs</a><'db>)</h4></section><section id="tymethod.layout_of_adt" class="method"><h4 class="code-header">fn <a href="#tymethod.layout_of_adt" class="fn">layout_of_adt</a><'db>( |
| &'db self, |
| def: AdtId, |
| args: <a class="struct" href="../next_solver/struct.GenericArgs.html" title="struct hir::next_solver::GenericArgs">GenericArgs</a><'db>, |
| trait_env: Arc<TraitEnvironment<'db>>, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Arc<LayoutData<RustcFieldIdx, RustcEnumVariantIdx>>, <a class="enum" href="../enum.LayoutError.html" title="enum hir::LayoutError">LayoutError</a>></h4></section><section id="tymethod.layout_of_ty" class="method"><h4 class="code-header">fn <a href="#tymethod.layout_of_ty" class="fn">layout_of_ty</a><'db>( |
| &'db self, |
| ty: <a class="struct" href="../next_solver/struct.Ty.html" title="struct hir::next_solver::Ty">Ty</a><'db>, |
| env: Arc<TraitEnvironment<'db>>, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Arc<LayoutData<RustcFieldIdx, RustcEnumVariantIdx>>, <a class="enum" href="../enum.LayoutError.html" title="enum hir::LayoutError">LayoutError</a>></h4></section><section id="tymethod.target_data_layout" class="method"><h4 class="code-header">fn <a href="#tymethod.target_data_layout" class="fn">target_data_layout</a>( |
| &self, |
| krate: Crate, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Arc<TargetDataLayout>, TargetLoadError></h4></section><section id="tymethod.dyn_compatibility_of_trait" class="method"><h4 class="code-header">fn <a href="#tymethod.dyn_compatibility_of_trait" class="fn">dyn_compatibility_of_trait</a>( |
| &self, |
| trait_: <a class="struct" href="../struct.TraitId.html" title="struct hir::TraitId">TraitId</a>, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="../enum.DynCompatibilityViolation.html" title="enum hir::DynCompatibilityViolation">DynCompatibilityViolation</a>></h4></section><section id="tymethod.ty" class="method"><h4 class="code-header">fn <a href="#tymethod.ty" class="fn">ty</a><'db>(&'db self, def: TyDefId) -> EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, <a class="struct" href="../next_solver/struct.Ty.html" title="struct hir::next_solver::Ty">Ty</a><'db>></h4></section><section id="tymethod.type_for_type_alias_with_diagnostics" class="method"><h4 class="code-header">fn <a href="#tymethod.type_for_type_alias_with_diagnostics" class="fn">type_for_type_alias_with_diagnostics</a><'db>( |
| &'db self, |
| def: TypeAliasId, |
| ) -> (EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, <a class="struct" href="../next_solver/struct.Ty.html" title="struct hir::next_solver::Ty">Ty</a><'db>>, <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ThinArc<<a class="primitive" href="https://doc.rust-lang.org/1.89.0/std/primitive.unit.html">()</a>, TyLoweringDiagnostic>>)</h4></section><section id="tymethod.value_ty" class="method"><h4 class="code-header">fn <a href="#tymethod.value_ty" class="fn">value_ty</a><'db>( |
| &'db self, |
| def: ValueTyDefId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, <a class="struct" href="../next_solver/struct.Ty.html" title="struct hir::next_solver::Ty">Ty</a><'db>>></h4></section><section id="tymethod.impl_self_ty_with_diagnostics" class="method"><h4 class="code-header">fn <a href="#tymethod.impl_self_ty_with_diagnostics" class="fn">impl_self_ty_with_diagnostics</a><'db>( |
| &'db self, |
| def: ImplId, |
| ) -> (EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, <a class="struct" href="../next_solver/struct.Ty.html" title="struct hir::next_solver::Ty">Ty</a><'db>>, <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ThinArc<<a class="primitive" href="https://doc.rust-lang.org/1.89.0/std/primitive.unit.html">()</a>, TyLoweringDiagnostic>>)</h4></section><section id="tymethod.impl_self_ty" class="method"><h4 class="code-header">fn <a href="#tymethod.impl_self_ty" class="fn">impl_self_ty</a><'db>( |
| &'db self, |
| def: ImplId, |
| ) -> EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, <a class="struct" href="../next_solver/struct.Ty.html" title="struct hir::next_solver::Ty">Ty</a><'db>></h4></section><section id="tymethod.const_param_ty_with_diagnostics" class="method"><h4 class="code-header">fn <a href="#tymethod.const_param_ty_with_diagnostics" class="fn">const_param_ty_with_diagnostics</a><'db>( |
| &'db self, |
| def: ConstParamId, |
| ) -> (<a class="struct" href="../next_solver/struct.Ty.html" title="struct hir::next_solver::Ty">Ty</a><'db>, <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ThinArc<<a class="primitive" href="https://doc.rust-lang.org/1.89.0/std/primitive.unit.html">()</a>, TyLoweringDiagnostic>>)</h4></section><section id="tymethod.const_param_ty" class="method"><h4 class="code-header">fn <a href="#tymethod.const_param_ty" class="fn">const_param_ty</a>(&self, def: ConstParamId) -> Ty<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>></h4></section><section id="tymethod.impl_trait_with_diagnostics" class="method"><h4 class="code-header">fn <a href="#tymethod.impl_trait_with_diagnostics" class="fn">impl_trait_with_diagnostics</a><'db>( |
| &'db self, |
| def: ImplId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><(EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, TraitRef<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>>>, <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ThinArc<<a class="primitive" href="https://doc.rust-lang.org/1.89.0/std/primitive.unit.html">()</a>, TyLoweringDiagnostic>>)></h4></section><section id="tymethod.impl_trait" class="method"><h4 class="code-header">fn <a href="#tymethod.impl_trait" class="fn">impl_trait</a><'db>( |
| &'db self, |
| def: ImplId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, TraitRef<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>>>></h4></section><section id="tymethod.field_types_with_diagnostics" class="method"><h4 class="code-header">fn <a href="#tymethod.field_types_with_diagnostics" class="fn">field_types_with_diagnostics</a><'db>( |
| &'db self, |
| var: <a class="enum" href="../diagnostics/enum.VariantId.html" title="enum hir::diagnostics::VariantId">VariantId</a>, |
| ) -> (Arc<ArenaMap<Idx<FieldData>, EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, <a class="struct" href="../next_solver/struct.Ty.html" title="struct hir::next_solver::Ty">Ty</a><'db>>>>, <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ThinArc<<a class="primitive" href="https://doc.rust-lang.org/1.89.0/std/primitive.unit.html">()</a>, TyLoweringDiagnostic>>)</h4></section><section id="tymethod.field_types" class="method"><h4 class="code-header">fn <a href="#tymethod.field_types" class="fn">field_types</a>( |
| &self, |
| var: <a class="enum" href="../diagnostics/enum.VariantId.html" title="enum hir::diagnostics::VariantId">VariantId</a>, |
| ) -> Arc<ArenaMap<Idx<FieldData>, Binders<Ty<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>>>></h4></section><section id="tymethod.callable_item_signature" class="method"><h4 class="code-header">fn <a href="#tymethod.callable_item_signature" class="fn">callable_item_signature</a><'db>( |
| &'db self, |
| def: CallableDefId, |
| ) -> EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, Binder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, FnSig<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>>>></h4></section><section id="tymethod.return_type_impl_traits" class="method"><h4 class="code-header">fn <a href="#tymethod.return_type_impl_traits" class="fn">return_type_impl_traits</a>( |
| &self, |
| def: FunctionId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Arc<Binders<ImplTraits>>></h4></section><section id="tymethod.type_alias_impl_traits" class="method"><h4 class="code-header">fn <a href="#tymethod.type_alias_impl_traits" class="fn">type_alias_impl_traits</a>( |
| &self, |
| def: TypeAliasId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Arc<Binders<ImplTraits>>></h4></section><section id="tymethod.generic_predicates_for_param" class="method"><h4 class="code-header">fn <a href="#tymethod.generic_predicates_for_param" class="fn">generic_predicates_for_param</a>( |
| &self, |
| def: GenericDefId, |
| param_id: TypeOrConstParamId, |
| assoc_name: <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.Name.html" title="struct hir::Name">Name</a>>, |
| ) -> GenericPredicates</h4></section><section id="tymethod.generic_predicates" class="method"><h4 class="code-header">fn <a href="#tymethod.generic_predicates" class="fn">generic_predicates</a>(&self, def: GenericDefId) -> GenericPredicates</h4></section><section id="tymethod.generic_predicates_without_parent_with_diagnostics" class="method"><h4 class="code-header">fn <a href="#tymethod.generic_predicates_without_parent_with_diagnostics" class="fn">generic_predicates_without_parent_with_diagnostics</a><'db>( |
| &'db self, |
| def: GenericDefId, |
| ) -> (GenericPredicates<'db>, <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ThinArc<<a class="primitive" href="https://doc.rust-lang.org/1.89.0/std/primitive.unit.html">()</a>, TyLoweringDiagnostic>>)</h4></section><section id="tymethod.generic_predicates_without_parent" class="method"><h4 class="code-header">fn <a href="#tymethod.generic_predicates_without_parent" class="fn">generic_predicates_without_parent</a><'db>( |
| &'db self, |
| def: GenericDefId, |
| ) -> GenericPredicates<'db></h4></section><section id="tymethod.trait_environment_for_body" class="method"><h4 class="code-header">fn <a href="#tymethod.trait_environment_for_body" class="fn">trait_environment_for_body</a><'db>( |
| &'db self, |
| def: DefWithBodyId, |
| ) -> Arc<TraitEnvironment<'db>></h4></section><section id="tymethod.trait_environment" class="method"><h4 class="code-header">fn <a href="#tymethod.trait_environment" class="fn">trait_environment</a><'db>( |
| &'db self, |
| def: GenericDefId, |
| ) -> Arc<TraitEnvironment<'db>></h4></section><section id="tymethod.generic_defaults_with_diagnostics" class="method"><h4 class="code-header">fn <a href="#tymethod.generic_defaults_with_diagnostics" class="fn">generic_defaults_with_diagnostics</a>( |
| &self, |
| def: GenericDefId, |
| ) -> (GenericDefaults, <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ThinArc<<a class="primitive" href="https://doc.rust-lang.org/1.89.0/std/primitive.unit.html">()</a>, TyLoweringDiagnostic>>)</h4></section><section id="tymethod.generic_defaults" class="method"><h4 class="code-header">fn <a href="#tymethod.generic_defaults" class="fn">generic_defaults</a>(&self, def: GenericDefId) -> GenericDefaults</h4></section><section id="tymethod.inherent_impls_in_crate" class="method"><h4 class="code-header">fn <a href="#tymethod.inherent_impls_in_crate" class="fn">inherent_impls_in_crate</a>(&self, krate: Crate) -> Arc<InherentImpls></h4></section><section id="tymethod.inherent_impls_in_block" class="method"><h4 class="code-header">fn <a href="#tymethod.inherent_impls_in_block" class="fn">inherent_impls_in_block</a>(&self, block: BlockId) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Arc<InherentImpls>></h4></section><section id="tymethod.incoherent_inherent_impl_crates" class="method"><h4 class="code-header">fn <a href="#tymethod.incoherent_inherent_impl_crates" class="fn">incoherent_inherent_impl_crates</a>( |
| &self, |
| krate: Crate, |
| fp: <a class="enum" href="../enum.TyFingerprint.html" title="enum hir::TyFingerprint">TyFingerprint</a>, |
| ) -> SmallVec<[Crate; <a class="primitive" href="https://doc.rust-lang.org/1.89.0/std/primitive.array.html">2</a>]></h4></section><section id="tymethod.trait_impls_in_crate" class="method"><h4 class="code-header">fn <a href="#tymethod.trait_impls_in_crate" class="fn">trait_impls_in_crate</a>(&self, krate: Crate) -> Arc<TraitImpls></h4></section><section id="tymethod.trait_impls_in_block" class="method"><h4 class="code-header">fn <a href="#tymethod.trait_impls_in_block" class="fn">trait_impls_in_block</a>(&self, block: BlockId) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Arc<TraitImpls>></h4></section><section id="tymethod.trait_impls_in_deps" class="method"><h4 class="code-header">fn <a href="#tymethod.trait_impls_in_deps" class="fn">trait_impls_in_deps</a>(&self, krate: Crate) -> Arc<[Arc<TraitImpls>]></h4></section><section id="tymethod.intern_impl_trait_id" class="method"><h4 class="code-header">fn <a href="#tymethod.intern_impl_trait_id" class="fn">intern_impl_trait_id</a>(&self, id: ImplTraitId) -> InternedOpaqueTyId</h4></section><section id="tymethod.intern_closure" class="method"><h4 class="code-header">fn <a href="#tymethod.intern_closure" class="fn">intern_closure</a>(&self, id: InternedClosure) -> InternedClosureId</h4></section><section id="tymethod.intern_coroutine" class="method"><h4 class="code-header">fn <a href="#tymethod.intern_coroutine" class="fn">intern_coroutine</a>(&self, id: InternedCoroutine) -> InternedCoroutineId</h4></section><section id="tymethod.fn_def_variance" class="method"><h4 class="code-header">fn <a href="#tymethod.fn_def_variance" class="fn">fn_def_variance</a>(&self, fn_def_id: CallableDefId) -> Variances<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>></h4></section><section id="tymethod.adt_variance" class="method"><h4 class="code-header">fn <a href="#tymethod.adt_variance" class="fn">adt_variance</a>(&self, adt_id: AdtId) -> Variances<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>></h4></section><section id="tymethod.variances_of" class="method"><h4 class="code-header">fn <a href="#tymethod.variances_of" class="fn">variances_of</a>(&self, def: GenericDefId) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Arc<[<a class="enum" href="../enum.Variance.html" title="enum hir::Variance">Variance</a>]>></h4></section><section id="tymethod.normalize_projection" class="method"><h4 class="code-header">fn <a href="#tymethod.normalize_projection" class="fn">normalize_projection</a>( |
| &self, |
| projection: ProjectionTy<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>, |
| env: Arc<TraitEnvironment<'_>>, |
| ) -> Ty<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>></h4></section><section id="tymethod.trait_solve" class="method"><h4 class="code-header">fn <a href="#tymethod.trait_solve" class="fn">trait_solve</a>( |
| &self, |
| krate: Crate, |
| block: <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><BlockId>, |
| goal: Canonical<InEnvironment<Goal<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>>>, |
| ) -> NextTraitSolveResult</h4></section><section id="tymethod.has_drop_glue" class="method"><h4 class="code-header">fn <a href="#tymethod.has_drop_glue" class="fn">has_drop_glue</a>( |
| &self, |
| ty: Ty<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>, |
| env: Arc<TraitEnvironment<'_>>, |
| ) -> <a class="enum" href="../enum.DropGlue.html" title="enum hir::DropGlue">DropGlue</a></h4></section><section id="tymethod.const_param_ty_ns" class="method"><h4 class="code-header">fn <a href="#tymethod.const_param_ty_ns" class="fn">const_param_ty_ns</a><'db>(&'db self, def: ConstParamId) -> <a class="struct" href="../next_solver/struct.Ty.html" title="struct hir::next_solver::Ty">Ty</a><'db></h4></section><section id="tymethod.field_types_ns" class="method"><h4 class="code-header">fn <a href="#tymethod.field_types_ns" class="fn">field_types_ns</a><'db>( |
| &'db self, |
| var: <a class="enum" href="../diagnostics/enum.VariantId.html" title="enum hir::diagnostics::VariantId">VariantId</a>, |
| ) -> Arc<ArenaMap<Idx<FieldData>, EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, <a class="struct" href="../next_solver/struct.Ty.html" title="struct hir::next_solver::Ty">Ty</a><'db>>>></h4></section><section id="tymethod.return_type_impl_traits_ns" class="method"><h4 class="code-header">fn <a href="#tymethod.return_type_impl_traits_ns" class="fn">return_type_impl_traits_ns</a><'db>( |
| &'db self, |
| def: FunctionId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Arc<EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, ImplTraits<'db>>>></h4></section><section id="tymethod.type_alias_impl_traits_ns" class="method"><h4 class="code-header">fn <a href="#tymethod.type_alias_impl_traits_ns" class="fn">type_alias_impl_traits_ns</a><'db>( |
| &'db self, |
| def: TypeAliasId, |
| ) -> <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Arc<EarlyBinder<<a class="struct" href="../next_solver/struct.DbInterner.html" title="struct hir::next_solver::DbInterner">DbInterner</a><'db>, ImplTraits<'db>>>></h4></section><section id="tymethod.generic_predicates_for_param_ns" class="method"><h4 class="code-header">fn <a href="#tymethod.generic_predicates_for_param_ns" class="fn">generic_predicates_for_param_ns</a><'db>( |
| &'db self, |
| def: GenericDefId, |
| param_id: TypeOrConstParamId, |
| assoc_name: <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.Name.html" title="struct hir::Name">Name</a>>, |
| ) -> GenericPredicates<'db></h4></section><section id="tymethod.generic_predicates_ns" class="method"><h4 class="code-header">fn <a href="#tymethod.generic_predicates_ns" class="fn">generic_predicates_ns</a><'db>( |
| &'db self, |
| def: GenericDefId, |
| ) -> GenericPredicates<'db></h4></section><section id="tymethod.generic_defaults_ns_with_diagnostics" class="method"><h4 class="code-header">fn <a href="#tymethod.generic_defaults_ns_with_diagnostics" class="fn">generic_defaults_ns_with_diagnostics</a><'db>( |
| &'db self, |
| def: GenericDefId, |
| ) -> (GenericDefaults<'db>, <a class="enum" href="https://doc.rust-lang.org/1.89.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ThinArc<<a class="primitive" href="https://doc.rust-lang.org/1.89.0/std/primitive.unit.html">()</a>, TyLoweringDiagnostic>>)</h4></section><section id="tymethod.generic_defaults_ns" class="method"><h4 class="code-header">fn <a href="#tymethod.generic_defaults_ns" class="fn">generic_defaults_ns</a><'db>( |
| &'db self, |
| def: GenericDefId, |
| ) -> GenericDefaults<'db></h4></section><section id="tymethod.lookup_intern_impl_trait_id" class="method"><h4 class="code-header">fn <a href="#tymethod.lookup_intern_impl_trait_id" class="fn">lookup_intern_impl_trait_id</a>(&self, id: InternedOpaqueTyId) -> ImplTraitId</h4></section><section id="tymethod.lookup_intern_closure" class="method"><h4 class="code-header">fn <a href="#tymethod.lookup_intern_closure" class="fn">lookup_intern_closure</a>(&self, id: InternedClosureId) -> InternedClosure</h4></section><section id="tymethod.lookup_intern_coroutine" class="method"><h4 class="code-header">fn <a href="#tymethod.lookup_intern_coroutine" class="fn">lookup_intern_coroutine</a>(&self, id: InternedCoroutineId) -> InternedCoroutine</h4></section></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-UnificationDatabase%3CInterner%3E-for-%26dyn+HirDatabase" class="impl"><a href="#impl-UnificationDatabase%3CInterner%3E-for-%26dyn+HirDatabase" class="anchor">§</a><h3 class="code-header">impl UnificationDatabase<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>> for &(dyn <a class="trait" href="trait.HirDatabase.html" title="trait hir::db::HirDatabase">HirDatabase</a> + 'static)</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fn_def_variance" class="method trait-impl"><a href="#method.fn_def_variance" class="anchor">§</a><h4 class="code-header">fn <a class="fn">fn_def_variance</a>(&self, fn_def_id: FnDefId<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>) -> Variances<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>></h4></section></summary><div class='docblock'>Gets the variances for the substitution of a fn def</div></details><details class="toggle method-toggle" open><summary><section id="method.adt_variance" class="method trait-impl"><a href="#method.adt_variance" class="anchor">§</a><h4 class="code-header">fn <a class="fn">adt_variance</a>(&self, adt_id: AdtId<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>>) -> Variances<<a class="struct" href="../struct.ChalkTyInterner.html" title="struct hir::ChalkTyInterner">Interner</a>></h4></section></summary><div class='docblock'>Gets the variances for the substitution of a adt</div></details></div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-HirDatabase-for-DB" class="impl"><a href="#impl-HirDatabase-for-DB" class="anchor">§</a><h3 class="code-header">impl<DB> <a class="trait" href="trait.HirDatabase.html" title="trait hir::db::HirDatabase">HirDatabase</a> for DB<div class="where">where |
| DB: <a class="trait" href="trait.DefDatabase.html" title="trait hir::db::DefDatabase">DefDatabase</a> + <a class="trait" href="https://doc.rust-lang.org/1.89.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a>,</div></h3></section></div><script src="../../trait.impl/hir_ty/db/trait.HirDatabase.js" async></script></section></div></main></body></html> |