Struct wasmer_vm::Global [−][src]
pub struct Global { /* fields omitted */ }
Expand description
A Global instance
Implementations
impl Global
[src]
impl Global
[src]pub fn new(global_type: GlobalType) -> Self
[src]
pub fn new(global_type: GlobalType) -> Self
[src]Create a new, zero bit-pattern initialized global from a GlobalType
.
pub fn ty(&self) -> &GlobalType
[src]
pub fn ty(&self) -> &GlobalType
[src]Get the type of the global.
pub fn vmglobal(&self) -> NonNull<VMGlobalDefinition>
[src]
pub fn vmglobal(&self) -> NonNull<VMGlobalDefinition>
[src]Get a pointer to the underlying definition used by the generated code.
pub fn get<T: WasmValueType>(&self, store: &dyn Any) -> Value<T>
[src]
pub fn get<T: WasmValueType>(&self, store: &dyn Any) -> Value<T>
[src]Get a value from the global.
pub unsafe fn set<T: WasmValueType>(
&self,
val: Value<T>
) -> Result<(), GlobalError>
[src]
pub unsafe fn set<T: WasmValueType>(
&self,
val: Value<T>
) -> Result<(), GlobalError>
[src]Set a value for the global.
Safety
The caller should check that the val
comes from the same store as this global.
pub unsafe fn set_unchecked<T: WasmValueType>(
&self,
val: Value<T>
) -> Result<(), GlobalError>
[src]
pub unsafe fn set_unchecked<T: WasmValueType>(
&self,
val: Value<T>
) -> Result<(), GlobalError>
[src]Set a value from the global (unchecked)
Safety
The caller should check that the val
comes from the same store as this global.
The caller should also ensure that this global is synchronized. Otherwise, use
set
instead.
Trait Implementations
impl MemoryUsage for Global
[src]
impl MemoryUsage for Global
[src]fn size_of_val(&self, visited: &mut dyn MemoryUsageTracker) -> usize
[src]
fn size_of_val(&self, visited: &mut dyn MemoryUsageTracker) -> usize
[src]Returns the size of the referenced value in bytes. Read more
impl Send for Global
[src]
Safety
This is safe to send between threads because there is no-thread specific logic.
TODO: look into other reasons that make something not Send
impl Sync for Global
[src]
Safety
This is safe to share between threads because it uses a Mutex
internally.
Auto Trait Implementations
Blanket Implementations
impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
pub fn pointer_metadata(
&<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
pub fn pointer_metadata(
&<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more