Skip to main content

Module consts

Module consts 

Source

Re-exportsยง

use rustc_errors::ErrorGuaranteed; ๐Ÿ”’
use rustc_hir::def::DefKind; ๐Ÿ”’
use rustc_hir::def_id::LocalDefId; ๐Ÿ”’
use rustc_middle::query::Providers; ๐Ÿ”’
use rustc_middle::thir::visit; ๐Ÿ”’
use rustc_middle::thir::visit::Visitor; ๐Ÿ”’
use rustc_middle::ty::abstract_const::CastKind; ๐Ÿ”’
use rustc_middle::ty; ๐Ÿ”’
use rustc_middle::ty::Expr; ๐Ÿ”’
use rustc_middle::ty::LitToConstInput; ๐Ÿ”’
use rustc_middle::ty::TyCtxt; ๐Ÿ”’
use rustc_middle::ty::TypeVisitableExt; ๐Ÿ”’
use rustc_middle::mir; ๐Ÿ”’
use rustc_middle::thir; ๐Ÿ”’
use rustc_span::Span; ๐Ÿ”’
use rustc_span::bug; ๐Ÿ”’
use tracing::instrument; ๐Ÿ”’
use tracing::instrument; ๐Ÿ”’
use crate::diagnostics::GenericConstantTooComplex; ๐Ÿ”’
use crate::diagnostics::GenericConstantTooComplexSub; ๐Ÿ”’

Structsยง

IsThirPolymorphic ๐Ÿ”’

Functionsยง

check_binop ๐Ÿ”’
We do not allow all binary operations in abstract consts, so filter disallowed ones.
check_unop ๐Ÿ”’
While we currently allow all unary operations, we still want to explicitly guard against future changes here.
error ๐Ÿ”’
maybe_supported_error ๐Ÿ”’
provide ๐Ÿ”’
recurse_build ๐Ÿ”’
thir_abstract_const ๐Ÿ”’
Builds an abstract const, do not use this directly, but use AbstractConst::new instead.