#[non_exhaustive]pub struct Package {
pub storage_id: Option<String>,
pub original_id: Option<String>,
pub version: Option<u64>,
pub modules: Vec<Module>,
pub type_origins: Vec<TypeOrigin>,
pub linkage: Vec<Linkage>,
}
Expand description
A Move Package
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.storage_id: Option<String>
The PackageId of this package
A package’s storage_id
is the Sui ObjectId of the package on-chain.
Outside of system packages the storage_id
for every package version is
different.
original_id: Option<String>
The PackageId of the first published version of this package.
A package’s original_id
(sometimes also called its runtime_id
) is the
storage_id
of the first version of this package that has been published.
The original_id
/runtime_id
is stable across all versions of the
package and does not ever change.
version: Option<u64>
The version of this package
modules: Vec<Module>
The modules defined by this package
type_origins: Vec<TypeOrigin>
List of datatype origins for mapping datatypes to a package version where it was first defined
linkage: Vec<Linkage>
The package’s transitive dependencies as a mapping from the package’s runtime Id (the Id it is referred to by in other packages) to its storage Id (the Id it is loaded from on chain).
Implementations§
Source§impl Package
impl Package
pub const STORAGE_ID_FIELD: &'static MessageField
pub const ORIGINAL_ID_FIELD: &'static MessageField
pub const VERSION_FIELD: &'static MessageField
pub const MODULES_FIELD: &'static MessageField
pub const TYPE_ORIGINS_FIELD: &'static MessageField
pub const LINKAGE_FIELD: &'static MessageField
Source§impl Package
impl Package
pub fn path_builder() -> PackageFieldPathBuilder
Source§impl Package
impl Package
pub const fn const_default() -> Self
Sourcepub fn storage_id_opt_mut(&mut self) -> Option<&mut String>
pub fn storage_id_opt_mut(&mut self) -> Option<&mut String>
Sourcepub fn storage_id_mut(&mut self) -> &mut String
pub fn storage_id_mut(&mut self) -> &mut String
Returns a mutable reference to storage_id
.
If the field is unset, it is first initialized with the default value.
Sourcepub fn storage_id_opt(&self) -> Option<&str>
pub fn storage_id_opt(&self) -> Option<&str>
Sourcepub fn set_storage_id<T: Into<String>>(&mut self, field: T)
pub fn set_storage_id<T: Into<String>>(&mut self, field: T)
Sets storage_id
with the provided value.
Sourcepub fn with_storage_id<T: Into<String>>(self, field: T) -> Self
pub fn with_storage_id<T: Into<String>>(self, field: T) -> Self
Sets storage_id
with the provided value.
Sourcepub fn original_id_opt_mut(&mut self) -> Option<&mut String>
pub fn original_id_opt_mut(&mut self) -> Option<&mut String>
Sourcepub fn original_id_mut(&mut self) -> &mut String
pub fn original_id_mut(&mut self) -> &mut String
Returns a mutable reference to original_id
.
If the field is unset, it is first initialized with the default value.
Sourcepub fn original_id_opt(&self) -> Option<&str>
pub fn original_id_opt(&self) -> Option<&str>
Sourcepub fn set_original_id<T: Into<String>>(&mut self, field: T)
pub fn set_original_id<T: Into<String>>(&mut self, field: T)
Sets original_id
with the provided value.
Sourcepub fn with_original_id<T: Into<String>>(self, field: T) -> Self
pub fn with_original_id<T: Into<String>>(self, field: T) -> Self
Sets original_id
with the provided value.
Sourcepub fn version_opt_mut(&mut self) -> Option<&mut u64>
pub fn version_opt_mut(&mut self) -> Option<&mut u64>
Sourcepub fn version_mut(&mut self) -> &mut u64
pub fn version_mut(&mut self) -> &mut u64
Returns a mutable reference to version
.
If the field is unset, it is first initialized with the default value.
Sourcepub fn version_opt(&self) -> Option<u64>
pub fn version_opt(&self) -> Option<u64>
Sourcepub fn set_version<T: Into<u64>>(&mut self, field: T)
pub fn set_version<T: Into<u64>>(&mut self, field: T)
Sets version
with the provided value.
Sourcepub fn with_version<T: Into<u64>>(self, field: T) -> Self
pub fn with_version<T: Into<u64>>(self, field: T) -> Self
Sets version
with the provided value.
Sourcepub fn modules(&self) -> &[Module]
pub fn modules(&self) -> &[Module]
Returns the value of modules
, or the default value if modules
is unset.
Sourcepub fn modules_mut(&mut self) -> &mut Vec<Module>
pub fn modules_mut(&mut self) -> &mut Vec<Module>
Returns a mutable reference to modules
.
If the field is unset, it is first initialized with the default value.
Sourcepub fn set_modules(&mut self, field: Vec<Module>)
pub fn set_modules(&mut self, field: Vec<Module>)
Sets modules
with the provided value.
Sourcepub fn with_modules(self, field: Vec<Module>) -> Self
pub fn with_modules(self, field: Vec<Module>) -> Self
Sets modules
with the provided value.
Sourcepub fn type_origins(&self) -> &[TypeOrigin]
pub fn type_origins(&self) -> &[TypeOrigin]
Returns the value of type_origins
, or the default value if type_origins
is unset.
Sourcepub fn type_origins_mut(&mut self) -> &mut Vec<TypeOrigin>
pub fn type_origins_mut(&mut self) -> &mut Vec<TypeOrigin>
Returns a mutable reference to type_origins
.
If the field is unset, it is first initialized with the default value.
Sourcepub fn set_type_origins(&mut self, field: Vec<TypeOrigin>)
pub fn set_type_origins(&mut self, field: Vec<TypeOrigin>)
Sets type_origins
with the provided value.
Sourcepub fn with_type_origins(self, field: Vec<TypeOrigin>) -> Self
pub fn with_type_origins(self, field: Vec<TypeOrigin>) -> Self
Sets type_origins
with the provided value.
Sourcepub fn linkage(&self) -> &[Linkage]
pub fn linkage(&self) -> &[Linkage]
Returns the value of linkage
, or the default value if linkage
is unset.
Sourcepub fn linkage_mut(&mut self) -> &mut Vec<Linkage>
pub fn linkage_mut(&mut self) -> &mut Vec<Linkage>
Returns a mutable reference to linkage
.
If the field is unset, it is first initialized with the default value.
Sourcepub fn set_linkage(&mut self, field: Vec<Linkage>)
pub fn set_linkage(&mut self, field: Vec<Linkage>)
Sets linkage
with the provided value.
Sourcepub fn with_linkage(self, field: Vec<Linkage>) -> Self
pub fn with_linkage(self, field: Vec<Linkage>) -> Self
Sets linkage
with the provided value.
Source§impl Package
impl Package
Sourcepub fn storage_id(&self) -> &str
pub fn storage_id(&self) -> &str
Returns the value of storage_id
, or the default value if storage_id
is unset.
Sourcepub fn original_id(&self) -> &str
pub fn original_id(&self) -> &str
Returns the value of original_id
, or the default value if original_id
is unset.
Trait Implementations§
§impl<'de> Deserialize<'de> for Package
impl<'de> Deserialize<'de> for Package
§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 Message for Package
impl Message for Package
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 Package
impl MessageFields for Package
const FIELDS: &'static [&'static MessageField]
impl StructuralPartialEq for Package
Auto Trait Implementations§
impl Freeze for Package
impl RefUnwindSafe for Package
impl Send for Package
impl Sync for Package
impl Unpin for Package
impl UnwindSafe for Package
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.