[−][src]Struct wasmer_types::Features
Controls which experimental features will be enabled. Features usually have a corresponding WebAssembly proposal.
Fields
threads: bool
Threads proposal should be enabled
reference_types: bool
Reference Types proposal should be enabled
simd: bool
SIMD proposal should be enabled
bulk_memory: bool
Bulk Memory proposal should be enabled
multi_value: bool
Multi Value proposal should be enabled
tail_call: bool
Tail call proposal should be enabled
module_linking: bool
Module Linking proposal should be enabled
multi_memory: bool
Multi Memory proposal should be enabled
memory64: bool
64-bit Memory proposal should be enabled
Implementations
impl Features
[src]
pub fn new() -> Self
[src]
Create a new feature
pub fn threads(&mut self, enable: bool) -> &mut Selfⓘ
[src]
Configures whether the WebAssembly threads proposal will be enabled.
The WebAssembly threads proposal is not currently fully standardized and is undergoing development. Support for this feature can be enabled through this method for appropriate WebAssembly modules.
This feature gates items such as shared memories and atomic instructions.
This is false
by default.
pub fn reference_types(&mut self, enable: bool) -> &mut Selfⓘ
[src]
Configures whether the WebAssembly reference types proposal will be enabled.
The WebAssembly reference types proposal is not currently fully standardized and is undergoing development. Support for this feature can be enabled through this method for appropriate WebAssembly modules.
This feature gates items such as the externref
type and multiple tables
being in a module. Note that enabling the reference types feature will
also enable the bulk memory feature.
This is false
by default.
pub fn simd(&mut self, enable: bool) -> &mut Selfⓘ
[src]
Configures whether the WebAssembly SIMD proposal will be enabled.
The WebAssembly SIMD proposal is not currently fully standardized and is undergoing development. Support for this feature can be enabled through this method for appropriate WebAssembly modules.
This feature gates items such as the v128
type and all of its
operators being in a module.
This is false
by default.
pub fn bulk_memory(&mut self, enable: bool) -> &mut Selfⓘ
[src]
Configures whether the WebAssembly bulk memory operations proposal will be enabled.
The WebAssembly bulk memory operations proposal is not currently fully standardized and is undergoing development. Support for this feature can be enabled through this method for appropriate WebAssembly modules.
This feature gates items such as the memory.copy
instruction, passive
data/table segments, etc, being in a module.
This is false
by default.
pub fn multi_value(&mut self, enable: bool) -> &mut Selfⓘ
[src]
Configures whether the WebAssembly multi-value proposal will be enabled.
The WebAssembly multi-value proposal is not currently fully standardized and is undergoing development. Support for this feature can be enabled through this method for appropriate WebAssembly modules.
This feature gates functions and blocks returning multiple values in a module, for example.
This is false
by default.
pub fn tail_call(&mut self, enable: bool) -> &mut Selfⓘ
[src]
Configures whether the WebAssembly tail-call proposal will be enabled.
The WebAssembly tail-call proposal is not currently fully standardized and is undergoing development. Support for this feature can be enabled through this method for appropriate WebAssembly modules.
This feature gates tail-call functions in WebAssembly.
This is false
by default.
pub fn module_linking(&mut self, enable: bool) -> &mut Selfⓘ
[src]
Configures whether the WebAssembly tail-call proposal will be enabled.
The WebAssembly tail-call proposal is not currently fully standardized and is undergoing development. Support for this feature can be enabled through this method for appropriate WebAssembly modules.
This feature allows WebAssembly modules to define, import and export modules and instances.
This is false
by default.
pub fn multi_memory(&mut self, enable: bool) -> &mut Selfⓘ
[src]
Configures whether the WebAssembly multi-memory proposal will be enabled.
The WebAssembly multi-memory proposal is not currently fully standardized and is undergoing development. Support for this feature can be enabled through this method for appropriate WebAssembly modules.
This feature adds the ability to use multiple memories within a single Wasm module.
This is false
by default.
pub fn memory64(&mut self, enable: bool) -> &mut Selfⓘ
[src]
Configures whether the WebAssembly 64-bit memory proposal will be enabled.
The WebAssembly 64-bit memory proposal is not currently fully standardized and is undergoing development. Support for this feature can be enabled through this method for appropriate WebAssembly modules.
This feature gates support for linear memory of sizes larger than 2^32 bits.
This is false
by default.
Trait Implementations
impl Clone for Features
[src]
impl Debug for Features
[src]
impl Default for Features
[src]
impl<'de> Deserialize<'de> for Features
[src]
pub fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
__D: Deserializer<'de>,
impl Eq for Features
[src]
impl PartialEq<Features> for Features
[src]
impl Serialize for Features
[src]
pub fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error> where
__S: Serializer,
[src]
__S: Serializer,
impl StructuralEq for Features
[src]
impl StructuralPartialEq for Features
[src]
Auto Trait Implementations
impl RefUnwindSafe for Features
[src]
impl Send for Features
[src]
impl Sync for Features
[src]
impl Unpin for Features
[src]
impl UnwindSafe for Features
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut Tⓘ
[src]
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,