#[non_exhaustive]pub struct ChangeEpoch {
pub epoch: Option<u64>,
pub protocol_version: Option<u64>,
pub storage_charge: Option<u64>,
pub computation_charge: Option<u64>,
pub storage_rebate: Option<u64>,
pub non_refundable_storage_fee: Option<u64>,
pub epoch_start_timestamp: Option<Timestamp>,
pub system_packages: Vec<SystemPackage>,
}
Expand description
System transaction used to change the epoch.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.epoch: Option<u64>
The next (to become) epoch ID.
protocol_version: Option<u64>
The protocol version in effect in the new epoch.
storage_charge: Option<u64>
The total amount of gas charged for storage during the epoch.
computation_charge: Option<u64>
The total amount of gas charged for computation during the epoch.
storage_rebate: Option<u64>
The amount of storage rebate refunded to the txn senders.
non_refundable_storage_fee: Option<u64>
The non-refundable storage fee.
epoch_start_timestamp: Option<Timestamp>
Unix timestamp when epoch started.
system_packages: Vec<SystemPackage>
System packages (specifically framework and Move stdlib) that are written before the new
epoch starts. This tracks framework upgrades on chain. When executing the ChangeEpoch
txn,
the validator must write out the following modules. Modules are provided with the version they
will be upgraded to, their modules in serialized form (which include their package ID), and
a list of their transitive dependencies.
Implementations§
Source§impl ChangeEpoch
impl ChangeEpoch
pub const EPOCH_FIELD: &'static MessageField
pub const PROTOCOL_VERSION_FIELD: &'static MessageField
pub const STORAGE_CHARGE_FIELD: &'static MessageField
pub const COMPUTATION_CHARGE_FIELD: &'static MessageField
pub const STORAGE_REBATE_FIELD: &'static MessageField
pub const NON_REFUNDABLE_STORAGE_FEE_FIELD: &'static MessageField
pub const EPOCH_START_TIMESTAMP_FIELD: &'static MessageField
pub const SYSTEM_PACKAGES_FIELD: &'static MessageField
Source§impl ChangeEpoch
impl ChangeEpoch
pub fn path_builder() -> ChangeEpochFieldPathBuilder
Source§impl ChangeEpoch
impl ChangeEpoch
pub const fn const_default() -> Self
Sourcepub fn epoch_opt_mut(&mut self) -> Option<&mut u64>
pub fn epoch_opt_mut(&mut self) -> Option<&mut u64>
Sourcepub fn epoch_mut(&mut self) -> &mut u64
pub fn epoch_mut(&mut self) -> &mut u64
Returns a mutable reference to epoch
.
If the field is unset, it is first initialized with the default value.
Sourcepub fn with_epoch<T: Into<u64>>(self, field: T) -> Self
pub fn with_epoch<T: Into<u64>>(self, field: T) -> Self
Sets epoch
with the provided value.
Sourcepub fn protocol_version_opt_mut(&mut self) -> Option<&mut u64>
pub fn protocol_version_opt_mut(&mut self) -> Option<&mut u64>
Sourcepub fn protocol_version_mut(&mut self) -> &mut u64
pub fn protocol_version_mut(&mut self) -> &mut u64
Returns a mutable reference to protocol_version
.
If the field is unset, it is first initialized with the default value.
Sourcepub fn protocol_version_opt(&self) -> Option<u64>
pub fn protocol_version_opt(&self) -> Option<u64>
Sourcepub fn set_protocol_version<T: Into<u64>>(&mut self, field: T)
pub fn set_protocol_version<T: Into<u64>>(&mut self, field: T)
Sets protocol_version
with the provided value.
Sourcepub fn with_protocol_version<T: Into<u64>>(self, field: T) -> Self
pub fn with_protocol_version<T: Into<u64>>(self, field: T) -> Self
Sets protocol_version
with the provided value.
Sourcepub fn storage_charge_opt_mut(&mut self) -> Option<&mut u64>
pub fn storage_charge_opt_mut(&mut self) -> Option<&mut u64>
Sourcepub fn storage_charge_mut(&mut self) -> &mut u64
pub fn storage_charge_mut(&mut self) -> &mut u64
Returns a mutable reference to storage_charge
.
If the field is unset, it is first initialized with the default value.
Sourcepub fn storage_charge_opt(&self) -> Option<u64>
pub fn storage_charge_opt(&self) -> Option<u64>
Sourcepub fn set_storage_charge<T: Into<u64>>(&mut self, field: T)
pub fn set_storage_charge<T: Into<u64>>(&mut self, field: T)
Sets storage_charge
with the provided value.
Sourcepub fn with_storage_charge<T: Into<u64>>(self, field: T) -> Self
pub fn with_storage_charge<T: Into<u64>>(self, field: T) -> Self
Sets storage_charge
with the provided value.
Sourcepub fn computation_charge_opt_mut(&mut self) -> Option<&mut u64>
pub fn computation_charge_opt_mut(&mut self) -> Option<&mut u64>
Sourcepub fn computation_charge_mut(&mut self) -> &mut u64
pub fn computation_charge_mut(&mut self) -> &mut u64
Returns a mutable reference to computation_charge
.
If the field is unset, it is first initialized with the default value.
Sourcepub fn computation_charge_opt(&self) -> Option<u64>
pub fn computation_charge_opt(&self) -> Option<u64>
Sourcepub fn set_computation_charge<T: Into<u64>>(&mut self, field: T)
pub fn set_computation_charge<T: Into<u64>>(&mut self, field: T)
Sets computation_charge
with the provided value.
Sourcepub fn with_computation_charge<T: Into<u64>>(self, field: T) -> Self
pub fn with_computation_charge<T: Into<u64>>(self, field: T) -> Self
Sets computation_charge
with the provided value.
Sourcepub fn storage_rebate_opt_mut(&mut self) -> Option<&mut u64>
pub fn storage_rebate_opt_mut(&mut self) -> Option<&mut u64>
Sourcepub fn storage_rebate_mut(&mut self) -> &mut u64
pub fn storage_rebate_mut(&mut self) -> &mut u64
Returns a mutable reference to storage_rebate
.
If the field is unset, it is first initialized with the default value.
Sourcepub fn storage_rebate_opt(&self) -> Option<u64>
pub fn storage_rebate_opt(&self) -> Option<u64>
Sourcepub fn set_storage_rebate<T: Into<u64>>(&mut self, field: T)
pub fn set_storage_rebate<T: Into<u64>>(&mut self, field: T)
Sets storage_rebate
with the provided value.
Sourcepub fn with_storage_rebate<T: Into<u64>>(self, field: T) -> Self
pub fn with_storage_rebate<T: Into<u64>>(self, field: T) -> Self
Sets storage_rebate
with the provided value.
Sourcepub fn non_refundable_storage_fee_opt_mut(&mut self) -> Option<&mut u64>
pub fn non_refundable_storage_fee_opt_mut(&mut self) -> Option<&mut u64>
Sourcepub fn non_refundable_storage_fee_mut(&mut self) -> &mut u64
pub fn non_refundable_storage_fee_mut(&mut self) -> &mut u64
Returns a mutable reference to non_refundable_storage_fee
.
If the field is unset, it is first initialized with the default value.
Sourcepub fn non_refundable_storage_fee_opt(&self) -> Option<u64>
pub fn non_refundable_storage_fee_opt(&self) -> Option<u64>
Sourcepub fn set_non_refundable_storage_fee<T: Into<u64>>(&mut self, field: T)
pub fn set_non_refundable_storage_fee<T: Into<u64>>(&mut self, field: T)
Sets non_refundable_storage_fee
with the provided value.
Sourcepub fn with_non_refundable_storage_fee<T: Into<u64>>(self, field: T) -> Self
pub fn with_non_refundable_storage_fee<T: Into<u64>>(self, field: T) -> Self
Sets non_refundable_storage_fee
with the provided value.
Sourcepub fn epoch_start_timestamp_opt_mut(&mut self) -> Option<&mut Timestamp>
pub fn epoch_start_timestamp_opt_mut(&mut self) -> Option<&mut Timestamp>
Sourcepub fn epoch_start_timestamp_mut(&mut self) -> &mut Timestamp
pub fn epoch_start_timestamp_mut(&mut self) -> &mut Timestamp
Returns a mutable reference to epoch_start_timestamp
.
If the field is unset, it is first initialized with the default value.
Sourcepub fn epoch_start_timestamp_opt(&self) -> Option<&Timestamp>
pub fn epoch_start_timestamp_opt(&self) -> Option<&Timestamp>
Sourcepub fn set_epoch_start_timestamp<T: Into<Timestamp>>(&mut self, field: T)
pub fn set_epoch_start_timestamp<T: Into<Timestamp>>(&mut self, field: T)
Sets epoch_start_timestamp
with the provided value.
Sourcepub fn with_epoch_start_timestamp<T: Into<Timestamp>>(self, field: T) -> Self
pub fn with_epoch_start_timestamp<T: Into<Timestamp>>(self, field: T) -> Self
Sets epoch_start_timestamp
with the provided value.
Sourcepub fn system_packages(&self) -> &[SystemPackage]
pub fn system_packages(&self) -> &[SystemPackage]
Returns the value of system_packages
, or the default value if system_packages
is unset.
Sourcepub fn system_packages_mut(&mut self) -> &mut Vec<SystemPackage>
pub fn system_packages_mut(&mut self) -> &mut Vec<SystemPackage>
Returns a mutable reference to system_packages
.
If the field is unset, it is first initialized with the default value.
Sourcepub fn set_system_packages(&mut self, field: Vec<SystemPackage>)
pub fn set_system_packages(&mut self, field: Vec<SystemPackage>)
Sets system_packages
with the provided value.
Sourcepub fn with_system_packages(self, field: Vec<SystemPackage>) -> Self
pub fn with_system_packages(self, field: Vec<SystemPackage>) -> Self
Sets system_packages
with the provided value.
Source§impl ChangeEpoch
impl ChangeEpoch
Sourcepub fn protocol_version(&self) -> u64
pub fn protocol_version(&self) -> u64
Returns the value of protocol_version
, or the default value if protocol_version
is unset.
Sourcepub fn storage_charge(&self) -> u64
pub fn storage_charge(&self) -> u64
Returns the value of storage_charge
, or the default value if storage_charge
is unset.
Sourcepub fn computation_charge(&self) -> u64
pub fn computation_charge(&self) -> u64
Returns the value of computation_charge
, or the default value if computation_charge
is unset.
Sourcepub fn storage_rebate(&self) -> u64
pub fn storage_rebate(&self) -> u64
Returns the value of storage_rebate
, or the default value if storage_rebate
is unset.
Sourcepub fn non_refundable_storage_fee(&self) -> u64
pub fn non_refundable_storage_fee(&self) -> u64
Returns the value of non_refundable_storage_fee
, or the default value if non_refundable_storage_fee
is unset.
Trait Implementations§
Source§impl Clone for ChangeEpoch
impl Clone for ChangeEpoch
Source§fn clone(&self) -> ChangeEpoch
fn clone(&self) -> ChangeEpoch
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for ChangeEpoch
impl Debug for ChangeEpoch
Source§impl Default for ChangeEpoch
impl Default for ChangeEpoch
§impl<'de> Deserialize<'de> for ChangeEpoch
impl<'de> Deserialize<'de> for ChangeEpoch
§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>,
Source§impl From<ChangeEpoch> for ChangeEpoch
impl From<ChangeEpoch> for ChangeEpoch
Source§fn from(value: ChangeEpoch) -> Self
fn from(value: ChangeEpoch) -> Self
Source§impl Message for ChangeEpoch
impl Message for ChangeEpoch
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.Source§impl MessageFields for ChangeEpoch
impl MessageFields for ChangeEpoch
const FIELDS: &'static [&'static MessageField]
Source§impl PartialEq for ChangeEpoch
impl PartialEq for ChangeEpoch
§impl Serialize for ChangeEpoch
impl Serialize for ChangeEpoch
Source§impl TryFrom<&ChangeEpoch> for ChangeEpoch
impl TryFrom<&ChangeEpoch> for ChangeEpoch
Source§type Error = TryFromProtoError
type Error = TryFromProtoError
impl StructuralPartialEq for ChangeEpoch
Auto Trait Implementations§
impl Freeze for ChangeEpoch
impl RefUnwindSafe for ChangeEpoch
impl Send for ChangeEpoch
impl Sync for ChangeEpoch
impl Unpin for ChangeEpoch
impl UnwindSafe for ChangeEpoch
Blanket Implementations§
§impl<U> As for U
impl<U> As for U
§fn as_<T>(self) -> Twhere
T: CastFrom<U>,
fn as_<T>(self) -> Twhere
T: CastFrom<U>,
self
to type T
. The semantics of numeric casting with the as
operator are followed, so <T as As>::as_::<U>
can be used in the same way as T as U
for numeric conversions. Read moreSource§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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Conv for T
impl<T> Conv for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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>
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>
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§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request
§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Layered
].§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read more§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read more§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self
, then passes self.as_ref()
into the pipe function.§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self
, then passes self.as_mut()
into the pipe
function.§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self
, then passes self.deref()
into the pipe function.§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§impl<T> Tap for T
impl<T> Tap for T
§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B>
of a value. Read more§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B>
of a value. Read more§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R>
view of a value. Read more§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R>
view of a value. Read more§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target
of a value. Read more§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target
of a value. Read more§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap()
only in debug builds, and is erased in release builds.§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut()
only in debug builds, and is erased in release
builds.§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow()
only in debug builds, and is erased in release
builds.§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut()
only in debug builds, and is erased in release
builds.§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref()
only in debug builds, and is erased in release
builds.§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut()
only in debug builds, and is erased in release
builds.§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref()
only in debug builds, and is erased in release
builds.