Struct wasmer_asml_fork::Global [−][src]
pub struct Global { /* fields omitted */ }
Expand description
A WebAssembly global
instance.
A global instance is the runtime representation of a global variable. It consists of an individual value and a flag indicating whether it is mutable.
Spec: https://webassembly.github.io/spec/core/exec/runtime.html#global-instances
Implementations
Returns the GlobalType
of the Global
.
Example
let c = Global::new(&store, Value::I32(1));
let v = Global::new_mut(&store, Value::I64(1));
assert_eq!(c.ty(), &GlobalType::new(Type::I32, Mutability::Const));
assert_eq!(v.ty(), &GlobalType::new(Type::I64, Mutability::Var));
Sets a custom value Val
to the runtime Global.
Example
let g = Global::new_mut(&store, Value::I32(1));
assert_eq!(g.get(), Value::I32(1));
g.set(Value::I32(2));
assert_eq!(g.get(), Value::I32(2));
Errors
Trying to mutate a immutable global will raise an error:
let g = Global::new(&store, Value::I32(1));
g.set(Value::I32(2)).unwrap();
Trying to set a value of a incompatible type will raise an error:
let g = Global::new(&store, Value::I32(1));
// This results in an error: `RuntimeError`.
g.set(Value::I64(2)).unwrap();
Trait Implementations
Convert the extern internally to hold a weak reference to the InstanceRef
.
This is useful for preventing cycles, for example for data stored in a
type implementing WasmerEnv
. Read more
Returns the size of the referenced value in bytes. Read more
Auto Trait Implementations
impl !RefUnwindSafe for Global
impl !UnwindSafe for Global
Blanket Implementations
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.
Mutably borrows from an owned value. Read more
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more