#[non_exhaustive]pub enum ObjectOut {
Missing,
ObjectWrite {
digest: ObjectDigest,
owner: Owner,
},
PackageWrite {
version: Version,
digest: ObjectDigest,
},
}Expand description
State of an object after execution
§BCS
The BCS serialized form for this type is defined by the following ABNF:
object-out = %d00 ; Missing
/ %d01 object-digest owner ; ObjectWrite
/ %d02 u64 object-digest ; PackageWriteVariants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Missing
Same definition as in ObjectIn.
ObjectWrite
Any written object, including all of mutated, created, unwrapped today.
PackageWrite
Packages writes need to be tracked separately with version because we don’t use lamport version for package publish and upgrades.
Implementations§
Source§impl ObjectOut
impl ObjectOut
Sourcepub fn is_missing(&self) -> bool
pub fn is_missing(&self) -> bool
Checks if this is a missing variant.
Sourcepub fn is_object_write(&self) -> bool
pub fn is_object_write(&self) -> bool
Checks if this is a object_write variant.
Sourcepub fn is_package_write(&self) -> bool
pub fn is_package_write(&self) -> bool
Checks if this is a package_write variant.
pub fn opt_object_digest(&self) -> Option<ObjectDigest>
pub fn object_digest(&self) -> ObjectDigest
pub fn opt_object_owner(&self) -> Option<Owner>
pub fn object_owner(&self) -> Owner
pub fn opt_package_version(&self) -> Option<Version>
pub fn package_version(&self) -> Version
pub fn opt_package_digest(&self) -> Option<ObjectDigest>
pub fn package_digest(&self) -> ObjectDigest
Trait Implementations§
Source§impl Arbitrary for ObjectOut
Available on crate feature proptest only.
impl Arbitrary for ObjectOut
Available on crate feature
proptest only.Source§type Parameters = ()
type Parameters = ()
The type of parameters that
arbitrary_with accepts for configuration
of the generated Strategy. Parameters must implement Default.Source§type Strategy = BoxedStrategy<ObjectOut>
type Strategy = BoxedStrategy<ObjectOut>
The type of
Strategy used to generate values of type Self.Source§fn arbitrary_with(
args_shared: <Self as Arbitrary>::Parameters,
) -> Self::Strategy
fn arbitrary_with( args_shared: <Self as Arbitrary>::Parameters, ) -> Self::Strategy
Source§impl<'de> Deserialize<'de> for ObjectOut
Available on crate feature serde only.
impl<'de> Deserialize<'de> for ObjectOut
Available on crate feature
serde only.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
impl Eq for ObjectOut
impl StructuralPartialEq for ObjectOut
Auto Trait Implementations§
impl Freeze for ObjectOut
impl RefUnwindSafe for ObjectOut
impl Send for ObjectOut
impl Sync for ObjectOut
impl Unpin for ObjectOut
impl UnsafeUnpin for ObjectOut
impl UnwindSafe for ObjectOut
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