pub struct BrTableCost {
pub cost: u32,
pub size_multiplier: u32,
}Available on crate feature
std only.Expand description
Definition of a cost table for a Wasm br_table opcode.
Charge of a br_table opcode is calculated as follows:
cost + (len(br_table.targets) * size_multiplier)Fields§
§cost: u32Fixed cost charge for br_table opcode.
size_multiplier: u32Multiplier for size of target labels in the br_table opcode.
Trait Implementations§
Source§impl Add for BrTableCost
impl Add for BrTableCost
Source§type Output = BrTableCost
type Output = BrTableCost
The resulting type after applying the
+ operator.Source§fn add(self, rhs: BrTableCost) -> BrTableCost
fn add(self, rhs: BrTableCost) -> BrTableCost
Performs the
+ operation. Read moreSource§impl Clone for BrTableCost
impl Clone for BrTableCost
Source§fn clone(&self) -> BrTableCost
fn clone(&self) -> BrTableCost
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl DataSize for BrTableCost
impl DataSize for BrTableCost
Source§const IS_DYNAMIC: bool = false
const IS_DYNAMIC: bool = false
If
true, the type has a heap size that can vary at runtime, depending on the actual value.Source§const STATIC_HEAP_SIZE: usize = 0usize
const STATIC_HEAP_SIZE: usize = 0usize
The amount of space a value of the type always occupies. If
IS_DYNAMIC is false, this is
the total amount of heap memory occupied by the value. Otherwise this is a lower bound.Source§fn estimate_heap_size(&self) -> usize
fn estimate_heap_size(&self) -> usize
Estimates the size of heap memory taken up by this value. Read more
Source§impl Debug for BrTableCost
impl Debug for BrTableCost
Source§impl Default for BrTableCost
impl Default for BrTableCost
Source§impl<'de> Deserialize<'de> for BrTableCost
impl<'de> Deserialize<'de> for BrTableCost
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Distribution<BrTableCost> for Standard
Available on crate feature testing only.
impl Distribution<BrTableCost> for Standard
Available on crate feature
testing only.Source§fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> BrTableCost
fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> BrTableCost
Generate a random value of
T, using rng as the source of randomness.Source§fn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T>
fn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T>
Create an iterator that generates random values of
T, using rng as
the source of randomness. Read moreSource§impl FromBytes for BrTableCost
impl FromBytes for BrTableCost
Source§impl PartialEq for BrTableCost
impl PartialEq for BrTableCost
Source§impl Serialize for BrTableCost
impl Serialize for BrTableCost
Source§impl ToBytes for BrTableCost
impl ToBytes for BrTableCost
Source§fn serialized_length(&self) -> usize
fn serialized_length(&self) -> usize
Returns the length of the
Vec<u8> which would be returned from a successful call to
to_bytes() or into_bytes(). The data is not actually serialized, so this call is
relatively cheap.Source§impl Zero for BrTableCost
impl Zero for BrTableCost
impl Copy for BrTableCost
impl Eq for BrTableCost
impl StructuralPartialEq for BrTableCost
Auto Trait Implementations§
impl Freeze for BrTableCost
impl RefUnwindSafe for BrTableCost
impl Send for BrTableCost
impl Sync for BrTableCost
impl Unpin for BrTableCost
impl UnwindSafe for BrTableCost
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more