Skip to main content

Module clauses_of

Module clauses_of 

Source

Re-exportsยง

use std::assert_matches; ๐Ÿ”’
use hir::Node; ๐Ÿ”’
use rustc_attr_ir::find_attr; ๐Ÿ”’
use rustc_data_structures::fx::FxIndexSet; ๐Ÿ”’
use rustc_hir as hir; ๐Ÿ”’
use rustc_hir::def::DefKind; ๐Ÿ”’
use rustc_hir::def_id::DefId; ๐Ÿ”’
use rustc_hir::def_id::LocalDefId; ๐Ÿ”’
use rustc_middle::ty; ๐Ÿ”’
use rustc_middle::ty::GenericClauses; ๐Ÿ”’
use rustc_middle::ty::ImplTraitInTraitData; ๐Ÿ”’
use rustc_middle::ty::IncludeSizedImplicitBounds; ๐Ÿ”’
use rustc_middle::ty::Ty; ๐Ÿ”’
use rustc_middle::ty::TyCtxt; ๐Ÿ”’
use rustc_middle::ty::TypeVisitable; ๐Ÿ”’
use rustc_middle::ty::TypeVisitor; ๐Ÿ”’
use rustc_middle::ty::Upcast; ๐Ÿ”’
use rustc_span::DUMMY_SP; ๐Ÿ”’
use rustc_span::Ident; ๐Ÿ”’
use rustc_span::Span; ๐Ÿ”’
use rustc_span::bug; ๐Ÿ”’
use rustc_span::span_bug; ๐Ÿ”’
use tracing::debug; ๐Ÿ”’
use tracing::instrument; ๐Ÿ”’
use tracing::instrument; ๐Ÿ”’
use tracing::trace; ๐Ÿ”’
use super::item_bounds::explicit_item_bounds_with_filter; ๐Ÿ”’
use crate::collect::ItemCtxt; ๐Ÿ”’
use crate::constrained_generic_params as cgp; ๐Ÿ”’
use crate::delegation::inherit_clauses_for_delegation_item; ๐Ÿ”’
use crate::hir_ty_lowering::HirTyLowerer; ๐Ÿ”’
use crate::hir_ty_lowering::ImpliedBoundsContext; ๐Ÿ”’
use crate::hir_ty_lowering::OverlappingAsssocItemConstraints; ๐Ÿ”’
use crate::hir_ty_lowering::PredicateFilter; ๐Ÿ”’
use crate::hir_ty_lowering::RegionInferReason; ๐Ÿ”’

Functionsยง

assert_only_contains_clauses_from ๐Ÿ”’
clauses_of ๐Ÿ”’
Returns a list of all type clauses (explicit and implicit) for the definition with ID def_id. This includes all clauses returned by explicit_clauses_of, plus inferred constraints concerning which regions outlive other regions.
compute_bidirectional_outlives_clauses ๐Ÿ”’
Opaques have duplicated lifetimes and we need to compute bidirectional outlives clauses to enforce that these lifetimes stay in sync.
const_conditions ๐Ÿ”’
const_evaluatable_clauses_of ๐Ÿ”’
explicit_clauses_of ๐Ÿ”’
explicit_implied_clauses_of ๐Ÿ”’
explicit_implied_const_bounds ๐Ÿ”’
explicit_super_clauses_of ๐Ÿ”’
Ensures that the super-clauses of the trait with a DefId of trait_def_id are lowered and stored. This also ensures that the transitive super-clauses are lowered.
explicit_supertraits_containing_assoc_item ๐Ÿ”’
gather_explicit_clauses_of ๐Ÿ”’
Returns a list of user-specified type clauses for the definition with ID def_id. N.B., this does not include any implied/inferred constraints.
implied_clauses_with_filter ๐Ÿ”’
Ensures that the super-clauses of the trait with a DefId of trait_def_id are lowered and stored. This also ensures that the transitive super-clauses are lowered.
trait_explicit_clauses_and_bounds ๐Ÿ”’
type_param_clauses ๐Ÿ”’
Returns the clauses defined on item_def_id of the form X: Foo where X is the type parameter def_id.
where_predicate_clauses ๐Ÿ”’