pub enum NameKey {
Constant(Handle<Constant>),
GlobalVariable(Handle<GlobalVariable>),
Type(Handle<Type>),
StructMember(Handle<Type>, u32),
Function(Handle<Function>),
FunctionArgument(Handle<Function>, u32),
FunctionLocal(Handle<Function>, Handle<LocalVariable>),
FunctionOobLocal(Handle<Function>, Handle<Type>),
EntryPoint(EntryPointIndex),
EntryPointLocal(EntryPointIndex, Handle<LocalVariable>),
EntryPointArgument(EntryPointIndex, u32),
EntryPointOobLocal(EntryPointIndex, Handle<Type>),
}
Variants§
Constant(Handle<Constant>)
GlobalVariable(Handle<GlobalVariable>)
Type(Handle<Type>)
StructMember(Handle<Type>, u32)
Function(Handle<Function>)
FunctionArgument(Handle<Function>, u32)
FunctionLocal(Handle<Function>, Handle<LocalVariable>)
FunctionOobLocal(Handle<Function>, Handle<Type>)
A local variable used by ReadZeroSkipWrite bounds-check policy
when it needs to produce a pointer-typed result for an OOB access.
These are unique per accessed type, so the second element is a
type handle. See docs for crate::back::msl
.
EntryPoint(EntryPointIndex)
EntryPointLocal(EntryPointIndex, Handle<LocalVariable>)
EntryPointArgument(EntryPointIndex, u32)
EntryPointOobLocal(EntryPointIndex, Handle<Type>)
Entry point version of FunctionOobLocal
.
Trait Implementations§
Source§impl NameKeyExt for NameKey
impl NameKeyExt for NameKey
fn local(origin: FunctionOrigin, local_handle: Handle<LocalVariable>) -> NameKey
Source§fn oob_local_for_type(origin: FunctionOrigin, ty: Handle<Type>) -> NameKey
fn oob_local_for_type(origin: FunctionOrigin, ty: Handle<Type>) -> NameKey
Return the name key for a local variable used by ReadZeroSkipWrite bounds-check
policy when it needs to produce a pointer-typed result for an OOB access. These
are unique per accessed type, so the second argument is a type handle. See docs
for
crate::back::msl
.impl Eq for NameKey
impl StructuralPartialEq for NameKey
Auto Trait Implementations§
impl Freeze for NameKey
impl RefUnwindSafe for NameKey
impl Send for NameKey
impl Sync for NameKey
impl Unpin for NameKey
impl UnwindSafe for NameKey
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.