#[repr(u8)]pub enum ContractPrepareVersion {
V0 = 0,
V1 = 1,
V2 = 2,
}
Expand description
Our original code for limiting WASM stack was buggy. We fixed that, but we
still have to use old (V0
) limiter for old protocol versions.
This struct here exists to enforce that the value in the config is either
0
or 1
. We could have used a bool
instead, but there’s a chance that
our current impl isn’t perfect either and would need further tweaks in the
future.
Variants§
V0 = 0
Oldest, buggiest version.
Don’t use it unless specifically to support old protocol version.
V1 = 1
Old, slow and buggy version.
Better than V0, but don’t use this nevertheless.
V2 = 2
finite-wasm 0.3.0 based contract preparation code.
Implementations§
Source§impl ContractPrepareVersion
impl ContractPrepareVersion
pub fn v0() -> ContractPrepareVersion
Trait Implementations§
Source§impl Clone for ContractPrepareVersion
impl Clone for ContractPrepareVersion
Source§fn clone(&self) -> ContractPrepareVersion
fn clone(&self) -> ContractPrepareVersion
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 Debug for ContractPrepareVersion
impl Debug for ContractPrepareVersion
Source§impl<'de> Deserialize<'de> for ContractPrepareVersion
impl<'de> Deserialize<'de> for ContractPrepareVersion
Source§fn deserialize<D>(
deserializer: D,
) -> Result<ContractPrepareVersion, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D,
) -> Result<ContractPrepareVersion, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Hash for ContractPrepareVersion
impl Hash for ContractPrepareVersion
Source§impl PartialEq for ContractPrepareVersion
impl PartialEq for ContractPrepareVersion
Source§impl Serialize for ContractPrepareVersion
impl Serialize for ContractPrepareVersion
Source§fn 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,
Serialize this value into the given Serde serializer. Read more
impl Copy for ContractPrepareVersion
impl Eq for ContractPrepareVersion
impl StructuralPartialEq for ContractPrepareVersion
Auto Trait Implementations§
impl Freeze for ContractPrepareVersion
impl RefUnwindSafe for ContractPrepareVersion
impl Send for ContractPrepareVersion
impl Sync for ContractPrepareVersion
impl Unpin for ContractPrepareVersion
impl UnwindSafe for ContractPrepareVersion
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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> CallHasher for T
impl<T> CallHasher for T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
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<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§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