Struct rustc::ty::context::InterpretInternerInner [−][src]
struct InterpretInternerInner<'tcx> { allocs: FxHashSet<&'tcx Allocation>, functions: FxHashMap<AllocId, Instance<'tcx>>, function_cache: FxHashMap<Instance<'tcx>, AllocId>, alloc_by_id: FxHashMap<AllocId, &'tcx Allocation>, statics: FxHashMap<AllocId, DefId>, next_id: AllocId, static_cache: FxHashMap<DefId, AllocId>, literal_alloc_cache: FxHashMap<Vec<u8>, AllocId>, }
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
Fields
allocs: FxHashSet<&'tcx Allocation>
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
Stores the value of constants (and deduplicates the actual memory)
functions: FxHashMap<AllocId, Instance<'tcx>>
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
Allows obtaining function instance handles via a unique identifier
function_cache: FxHashMap<Instance<'tcx>, AllocId>
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
Inverse map of interpret_functions
.
Used so we don't allocate a new pointer every time we need one
alloc_by_id: FxHashMap<AllocId, &'tcx Allocation>
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
Allows obtaining const allocs via a unique identifier
statics: FxHashMap<AllocId, DefId>
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
Allows obtaining static def ids via a unique id
next_id: AllocId
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
The AllocId to assign to the next new regular allocation. Always incremented, never gets smaller.
static_cache: FxHashMap<DefId, AllocId>
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
Inverse map of statics
Used so we don't allocate a new pointer every time we need one
literal_alloc_cache: FxHashMap<Vec<u8>, AllocId>
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
A cache for basic byte allocations keyed by their contents. This is used to deduplicate allocations for string and bytestring literals.
Trait Implementations
impl<'tcx> Debug for InterpretInternerInner<'tcx>
[src]
impl<'tcx> Debug for InterpretInternerInner<'tcx>
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl<'tcx> Default for InterpretInternerInner<'tcx>
[src]
impl<'tcx> Default for InterpretInternerInner<'tcx>
fn default() -> InterpretInternerInner<'tcx>
[src]
fn default() -> InterpretInternerInner<'tcx>
Returns the "default value" for a type. Read more
Auto Trait Implementations
impl<'tcx> !Send for InterpretInternerInner<'tcx>
impl<'tcx> !Send for InterpretInternerInner<'tcx>
impl<'tcx> !Sync for InterpretInternerInner<'tcx>
impl<'tcx> !Sync for InterpretInternerInner<'tcx>