Skip to main content

Module valtrees

Module valtrees 

Source

Re-exportsΒ§

use rustc_abi::BackendRepr; πŸ”’
use rustc_abi::FieldIdx; πŸ”’
use rustc_abi::VariantIdx; πŸ”’
use rustc_data_structures::fx::FxHashMap; πŸ”’
use rustc_data_structures::fx::FxHashSet; πŸ”’
use rustc_middle::mir; πŸ”’
use rustc_middle::mir::interpret::EvalToValTreeResult; πŸ”’
use rustc_middle::mir::interpret::GlobalId; πŸ”’
use rustc_middle::mir::interpret::ValTreeCreationError; πŸ”’
use rustc_middle::traits::ObligationCause; πŸ”’
use rustc_middle::ty::layout::LayoutCx; πŸ”’
use rustc_middle::ty::layout::TyAndLayout; πŸ”’
use rustc_middle::ty; πŸ”’
use rustc_middle::ty::Ty; πŸ”’
use rustc_middle::ty::TyCtxt; πŸ”’
use rustc_span::DUMMY_SP; πŸ”’
use rustc_span::bug; πŸ”’
use tracing::debug; πŸ”’
use tracing::instrument; πŸ”’
use tracing::instrument; πŸ”’
use tracing::trace; πŸ”’
use super::VALTREE_MAX_NODES; πŸ”’
use super::eval_queries::mk_eval_cx_to_read_const_val; πŸ”’
use super::eval_queries::op_to_const; πŸ”’
use super::machine::CompileTimeInterpCx; πŸ”’
use crate::const_eval::CanAccessMutGlobal; πŸ”’
use crate::interpret::ImmTy; πŸ”’
use crate::interpret::Immediate; πŸ”’
use crate::interpret::InternKind; πŸ”’
use crate::interpret::MPlaceTy; πŸ”’
use crate::interpret::MemPlaceMeta; πŸ”’
use crate::interpret::MemoryKind; πŸ”’
use crate::interpret::PlaceTy; πŸ”’
use crate::interpret::Projectable; πŸ”’
use crate::interpret::Scalar; πŸ”’
use crate::interpret::intern_const_alloc_recursive; πŸ”’

FunctionsΒ§

branches πŸ”’
const_to_valtree_inner πŸ”’
create_valtree_place πŸ”’
dump_place πŸ”’
eval_to_valtree πŸ”’
Evaluates a constant and turns it into a type-level constant value.
reconstruct_place_meta πŸ”’
Valtrees don’t store the MemPlaceMeta that all dynamically sized values have in the interpreter. This function reconstructs it.
slice_branches πŸ”’
valtree_into_mplace πŸ”’
valtree_to_const_value
Converts a ValTree to a ConstValue, which is needed after mir construction has finished.
valtree_to_ref πŸ”’
Put a valtree into memory and return a reference to that.