Struct frame_support::dispatch::Weight
source · pub struct Weight { /* private fields */ }
Implementations
sourceimpl Weight
impl Weight
sourcepub const fn set_ref_time(self, c: u64) -> Weight
pub const fn set_ref_time(self, c: u64) -> Weight
Set the reference time part of the weight.
sourcepub const fn set_proof_size(self, c: u64) -> Weight
pub const fn set_proof_size(self, c: u64) -> Weight
Set the storage size part of the weight.
sourcepub const fn proof_size(&self) -> u64
pub const fn proof_size(&self) -> u64
Return the storage size part of the weight.
sourcepub fn ref_time_mut(&mut self) -> &mut u64
pub fn ref_time_mut(&mut self) -> &mut u64
Return a mutable reference to the reference time part of the weight.
sourcepub fn proof_size_mut(&mut self) -> &mut u64
pub fn proof_size_mut(&mut self) -> &mut u64
Return a mutable reference to the storage size part of the weight.
pub const MAX: Weight = Self{ ref_time: u64::MAX, proof_size: u64::MAX,}
sourcepub fn try_add(&self, other: &Weight, limit: &Weight) -> Option<Weight>
pub fn try_add(&self, other: &Weight, limit: &Weight) -> Option<Weight>
Try to add some other
weight while upholding the limit
.
sourcepub const fn from_ref_time(ref_time: u64) -> Weight
👎Deprecated: Will be removed soon; use from_parts
instead.
pub const fn from_ref_time(ref_time: u64) -> Weight
from_parts
instead.Construct Weight
with reference time weight and 0 storage size weight.
sourcepub const fn from_proof_size(proof_size: u64) -> Weight
👎Deprecated: Will be removed soon; use from_parts
instead.
pub const fn from_proof_size(proof_size: u64) -> Weight
from_parts
instead.Construct Weight
with storage size weight and 0 reference time weight.
sourcepub const fn from_parts(ref_time: u64, proof_size: u64) -> Weight
pub const fn from_parts(ref_time: u64, proof_size: u64) -> Weight
Construct Weight
from weight parts, namely reference time and proof size weights.
sourcepub const fn from_all(value: u64) -> Weight
pub const fn from_all(value: u64) -> Weight
Construct Weight
from the same weight for all parts.
sourcepub const fn saturating_add(self, rhs: Weight) -> Weight
pub const fn saturating_add(self, rhs: Weight) -> Weight
Saturating Weight
addition. Computes self + rhs
, saturating at the numeric bounds of
all fields instead of overflowing.
sourcepub const fn saturating_sub(self, rhs: Weight) -> Weight
pub const fn saturating_sub(self, rhs: Weight) -> Weight
Saturating Weight
subtraction. Computes self - rhs
, saturating at the numeric bounds
of all fields instead of overflowing.
sourcepub const fn saturating_mul(self, scalar: u64) -> Weight
pub const fn saturating_mul(self, scalar: u64) -> Weight
Saturating Weight
scalar multiplication. Computes self.field * scalar
for all fields,
saturating at the numeric bounds of all fields instead of overflowing.
sourcepub const fn saturating_div(self, scalar: u64) -> Weight
pub const fn saturating_div(self, scalar: u64) -> Weight
Saturating Weight
scalar division. Computes self.field / scalar
for all fields,
saturating at the numeric bounds of all fields instead of overflowing.
sourcepub const fn saturating_pow(self, exp: u32) -> Weight
pub const fn saturating_pow(self, exp: u32) -> Weight
Saturating Weight
scalar exponentiation. Computes self.field.pow(exp)
for all fields,
saturating at the numeric bounds of all fields instead of overflowing.
sourcepub fn saturating_accrue(&mut self, amount: Weight)
pub fn saturating_accrue(&mut self, amount: Weight)
Increment Weight
by amount
via saturating addition.
sourcepub fn saturating_reduce(&mut self, amount: Weight)
pub fn saturating_reduce(&mut self, amount: Weight)
Reduce Weight
by amount
via saturating subtraction.
sourcepub const fn checked_add(&self, rhs: &Weight) -> Option<Weight>
pub const fn checked_add(&self, rhs: &Weight) -> Option<Weight>
Checked Weight
addition. Computes self + rhs
, returning None
if overflow occurred.
sourcepub const fn checked_sub(&self, rhs: &Weight) -> Option<Weight>
pub const fn checked_sub(&self, rhs: &Weight) -> Option<Weight>
Checked Weight
subtraction. Computes self - rhs
, returning None
if overflow
occurred.
sourcepub const fn checked_mul(self, scalar: u64) -> Option<Weight>
pub const fn checked_mul(self, scalar: u64) -> Option<Weight>
Checked Weight
scalar multiplication. Computes self.field * scalar
for each field,
returning None
if overflow occurred.
sourcepub const fn checked_div(self, scalar: u64) -> Option<Weight>
pub const fn checked_div(self, scalar: u64) -> Option<Weight>
Checked Weight
scalar division. Computes self.field / scalar
for each field, returning
None
if overflow occurred.
sourcepub const fn checked_div_per_component(self, other: &Weight) -> Option<u64>
pub const fn checked_div_per_component(self, other: &Weight) -> Option<u64>
Calculates how many other
fit into self
.
Divides each component of self
against the same component of other
. Returns the minimum
of all those divisions. Returns None
in case all components of other
are zero.
This returns Some
even if some components of other
are zero as long as there is at least
one non-zero component in other
. The division for this particular component will then
yield the maximum value (e.g u64::MAX). This is because we assume not every operation and
hence each Weight
will necessarily use each resource.
sourcepub fn checked_accrue(&mut self, amount: Weight) -> Option<()>
pub fn checked_accrue(&mut self, amount: Weight) -> Option<()>
Try to increase self
by amount
via checked addition.
sourcepub fn checked_reduce(&mut self, amount: Weight) -> Option<()>
pub fn checked_reduce(&mut self, amount: Weight) -> Option<()>
Try to reduce self
by amount
via checked subtraction.
sourcepub const fn add_ref_time(self, scalar: u64) -> Weight
pub const fn add_ref_time(self, scalar: u64) -> Weight
Constant version of Add for ref_time
component with u64.
Is only overflow safe when evaluated at compile-time.
sourcepub const fn add_proof_size(self, scalar: u64) -> Weight
pub const fn add_proof_size(self, scalar: u64) -> Weight
Constant version of Add for proof_size
component with u64.
Is only overflow safe when evaluated at compile-time.
sourcepub const fn sub_ref_time(self, scalar: u64) -> Weight
pub const fn sub_ref_time(self, scalar: u64) -> Weight
Constant version of Sub for ref_time
component with u64.
Is only overflow safe when evaluated at compile-time.
sourcepub const fn sub_proof_size(self, scalar: u64) -> Weight
pub const fn sub_proof_size(self, scalar: u64) -> Weight
Constant version of Sub for proof_size
component with u64.
Is only overflow safe when evaluated at compile-time.
sourcepub const fn div(self, scalar: u64) -> Weight
pub const fn div(self, scalar: u64) -> Weight
Constant version of Div with u64.
Is only overflow safe when evaluated at compile-time.
sourcepub const fn mul(self, scalar: u64) -> Weight
pub const fn mul(self, scalar: u64) -> Weight
Constant version of Mul with u64.
Is only overflow safe when evaluated at compile-time.
sourcepub const fn any_gt(self, other: Weight) -> bool
pub const fn any_gt(self, other: Weight) -> bool
Returns true if any of self
’s constituent weights is strictly greater than that of the
other
’s, otherwise returns false.
sourcepub const fn all_gt(self, other: Weight) -> bool
pub const fn all_gt(self, other: Weight) -> bool
Returns true if all of self
’s constituent weights is strictly greater than that of the
other
’s, otherwise returns false.
sourcepub const fn any_lt(self, other: Weight) -> bool
pub const fn any_lt(self, other: Weight) -> bool
Returns true if any of self
’s constituent weights is strictly less than that of the
other
’s, otherwise returns false.
sourcepub const fn all_lt(self, other: Weight) -> bool
pub const fn all_lt(self, other: Weight) -> bool
Returns true if all of self
’s constituent weights is strictly less than that of the
other
’s, otherwise returns false.
sourcepub const fn any_gte(self, other: Weight) -> bool
pub const fn any_gte(self, other: Weight) -> bool
Returns true if any of self
’s constituent weights is greater than or equal to that of the
other
’s, otherwise returns false.
sourcepub const fn all_gte(self, other: Weight) -> bool
pub const fn all_gte(self, other: Weight) -> bool
Returns true if all of self
’s constituent weights is greater than or equal to that of the
other
’s, otherwise returns false.
sourcepub const fn any_lte(self, other: Weight) -> bool
pub const fn any_lte(self, other: Weight) -> bool
Returns true if any of self
’s constituent weights is less than or equal to that of the
other
’s, otherwise returns false.
Trait Implementations
sourceimpl AddAssign<Weight> for Weight
impl AddAssign<Weight> for Weight
sourcefn add_assign(&mut self, other: Weight)
fn add_assign(&mut self, other: Weight)
+=
operation. Read moresourceimpl CheckedAdd for Weight
impl CheckedAdd for Weight
sourceimpl CheckedSub for Weight
impl CheckedSub for Weight
sourceimpl<T> ClassifyDispatch<T> for Weight
impl<T> ClassifyDispatch<T> for Weight
sourcefn classify_dispatch(&self, _: T) -> DispatchClass
fn classify_dispatch(&self, _: T) -> DispatchClass
target
of type T
. When implementing
this for a dispatchable, T
will be a tuple of all arguments given to the function (except
origin). Read moresourceimpl Decode for Weight
impl Decode for Weight
sourcefn decode<__CodecInputEdqy>(
__codec_input_edqy: &mut __CodecInputEdqy
) -> Result<Weight, Error>where
__CodecInputEdqy: Input,
fn decode<__CodecInputEdqy>(
__codec_input_edqy: &mut __CodecInputEdqy
) -> Result<Weight, Error>where
__CodecInputEdqy: Input,
fn skip<I>(input: &mut I) -> Result<(), Error>where
I: Input,
fn skip<I>(input: &mut I) -> Result<(), Error>where
I: Input,
fn encoded_fixed_size() -> Option<usize>
fn encoded_fixed_size() -> Option<usize>
sourceimpl<'de> Deserialize<'de> for Weight
impl<'de> Deserialize<'de> for Weight
sourcefn deserialize<__D>(
__deserializer: __D
) -> Result<Weight, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D
) -> Result<Weight, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
sourceimpl Encode for Weight
impl Encode for Weight
sourcefn encode_to<__CodecOutputEdqy>(&self, __codec_dest_edqy: &mut __CodecOutputEdqy)where
__CodecOutputEdqy: Output + ?Sized,
fn encode_to<__CodecOutputEdqy>(&self, __codec_dest_edqy: &mut __CodecOutputEdqy)where
__CodecOutputEdqy: Output + ?Sized,
fn using_encoded<R, F>(&self, f: F) -> Rwhere
F: FnOnce(&[u8]) -> R,
fn using_encoded<R, F>(&self, f: F) -> Rwhere
F: FnOnce(&[u8]) -> R,
fn encoded_size(&self) -> usize
fn encoded_size(&self) -> usize
sourceimpl MaxEncodedLen for Weight
impl MaxEncodedLen for Weight
sourcefn max_encoded_len() -> usize
fn max_encoded_len() -> usize
sourceimpl Serialize for Weight
impl Serialize for Weight
sourcefn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
sourceimpl SubAssign<Weight> for Weight
impl SubAssign<Weight> for Weight
sourcefn sub_assign(&mut self, other: Weight)
fn sub_assign(&mut self, other: Weight)
-=
operation. Read moresourceimpl<T> WeighData<T> for Weight
impl<T> WeighData<T> for Weight
sourcefn weigh_data(&self, _: T) -> Weight
fn weigh_data(&self, _: T) -> Weight
T
given by target
. When implementing this for a dispatchable, T
will be
a tuple of all arguments given to the function (except origin). Read moreimpl Copy for Weight
impl EncodeLike<Weight> for Weight
impl Eq for Weight
impl StructuralEq for Weight
impl StructuralPartialEq for Weight
Auto Trait Implementations
impl RefUnwindSafe for Weight
impl Send for Weight
impl Sync for Weight
impl Unpin for Weight
impl UnwindSafe for Weight
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
sourceimpl<T> CheckedConversion for T
impl<T> CheckedConversion for T
sourcefn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
sourcefn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
impl<T> DecodeAll for Twhere
T: Decode,
impl<T> DecodeAll for Twhere
T: Decode,
fn decode_all(input: &mut &[u8]) -> Result<T, Error>
fn decode_all(input: &mut &[u8]) -> Result<T, Error>
Self
and consume all of the given input data. Read moreimpl<T> DecodeLimit for Twhere
T: Decode,
impl<T> DecodeLimit for Twhere
T: Decode,
fn decode_all_with_depth_limit(limit: u32, input: &mut &[u8]) -> Result<T, Error>
fn decode_all_with_depth_limit(limit: u32, input: &mut &[u8]) -> Result<T, Error>
Self
and consume all of the given input data. Read moreimpl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read morefn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read morefn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read morefn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read moresourceimpl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T, Outer> IsWrappedBy<Outer> for Twhere
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
impl<T, Outer> IsWrappedBy<Outer> for Twhere
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
impl<T> KeyedVec for Twhere
T: Codec,
impl<T> KeyedVec for Twhere
T: Codec,
sourceimpl<T> LowerBounded for Twhere
T: Bounded,
impl<T> LowerBounded for Twhere
T: Bounded,
impl<T> Pointable for T
impl<T> Pointable for T
sourceimpl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
sourcefn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
sourcefn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
T
. Read moresourceimpl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
sourcefn unchecked_into(self) -> T
fn unchecked_into(self) -> T
unchecked_from
.sourceimpl<T, S> UniqueSaturatedFrom<T> for Swhere
S: TryFrom<T> + Bounded,
impl<T, S> UniqueSaturatedFrom<T> for Swhere
S: TryFrom<T> + Bounded,
sourcefn unique_saturated_from(t: T) -> S
fn unique_saturated_from(t: T) -> S
T
into an equivalent instance of Self
.sourceimpl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
sourcefn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
T
.