Struct holochain_types::dna::DnaBundle
source · [−]pub struct DnaBundle(_);
Expand description
A bundle of Wasm zomes, respresented as a file.
Implementations
sourceimpl DnaBundle
impl DnaBundle
sourcepub fn new(
manifest: ValidatedDnaManifest,
resources: Vec<(PathBuf, Vec<u8>)>,
root_dir: PathBuf
) -> DnaResult<Self>
pub fn new(
manifest: ValidatedDnaManifest,
resources: Vec<(PathBuf, Vec<u8>)>,
root_dir: PathBuf
) -> DnaResult<Self>
Constructor
sourcepub async fn into_dna_file(
self,
network_seed: Option<NetworkSeed>,
properties: Option<YamlProperties>
) -> DnaResult<(DnaFile, DnaHash)>
pub async fn into_dna_file(
self,
network_seed: Option<NetworkSeed>,
properties: Option<YamlProperties>
) -> DnaResult<(DnaFile, DnaHash)>
Convert to a DnaFile, and return what the hash of the Dna would have been without the provided phenotype overrides
sourcepub async fn read_from_file(path: &Path) -> DnaResult<Self>
pub async fn read_from_file(path: &Path) -> DnaResult<Self>
Read from a bundle file
sourcepub fn to_dna_def(
&self,
integrity_zomes: IntegrityZomes,
coordinator_zomes: CoordinatorZomes,
network_seed: Option<NetworkSeed>,
properties: Option<YamlProperties>
) -> DnaResult<(DnaDefHashed, DnaHash)>
pub fn to_dna_def(
&self,
integrity_zomes: IntegrityZomes,
coordinator_zomes: CoordinatorZomes,
network_seed: Option<NetworkSeed>,
properties: Option<YamlProperties>
) -> DnaResult<(DnaDefHashed, DnaHash)>
Convert to a DnaDef
sourcepub async fn from_dna_file(dna_file: DnaFile) -> DnaResult<Self>
pub async fn from_dna_file(dna_file: DnaFile) -> DnaResult<Self>
Build a bundle from a DnaFile. Useful for tests.
Methods from Deref<Target = Bundle<ValidatedDnaManifest>>
sourcepub async fn write_to_file(
&self,
path: &Path
) -> impl Future<Output = Result<(), MrBundleError>>
pub async fn write_to_file(
&self,
path: &Path
) -> impl Future<Output = Result<(), MrBundleError>>
Write a Bundle to a file
sourcepub async fn resolve(
&self,
location: &Location
) -> impl Future<Output = Result<Cow<'_, Vec<u8, Global>>, MrBundleError>>
pub async fn resolve(
&self,
location: &Location
) -> impl Future<Output = Result<Cow<'_, Vec<u8, Global>>, MrBundleError>>
Retrieve the bytes for a resource at a Location, downloading it if necessary
sourcepub async fn resolve_all(
&self
) -> impl Future<Output = Result<HashMap<Location, Cow<'_, Vec<u8, Global>>, RandomState>, MrBundleError>>
pub async fn resolve_all(
&self
) -> impl Future<Output = Result<HashMap<Location, Cow<'_, Vec<u8, Global>>, RandomState>, MrBundleError>>
Return the full set of resources specified by this bundle’s manifest. References to bundled resources can be returned directly, while all others will be fetched from the filesystem or the network.
sourcepub async fn resolve_all_cloned(
&self
) -> impl Future<Output = Result<HashMap<Location, Vec<u8, Global>, RandomState>, MrBundleError>>
pub async fn resolve_all_cloned(
&self
) -> impl Future<Output = Result<HashMap<Location, Vec<u8, Global>, RandomState>, MrBundleError>>
Resolve all resources, but with fully owned references
sourcepub fn bundled_resources(&self) -> &BTreeMap<PathBuf, Vec<u8, Global>, Global>
pub fn bundled_resources(&self) -> &BTreeMap<PathBuf, Vec<u8, Global>, Global>
Access the map of resources included in this bundle
Bundled resources are also accessible via resolve
or resolve_all
,
but using this method prevents a Clone
sourcepub fn encode(&self) -> Result<Vec<u8, Global>, MrBundleError>
pub fn encode(&self) -> Result<Vec<u8, Global>, MrBundleError>
An arbitrary and opaque encoding of the bundle data into a byte array
sourcepub fn find_root_dir(&self, path: &Path) -> Result<PathBuf, MrBundleError>
pub fn find_root_dir(&self, path: &Path) -> Result<PathBuf, MrBundleError>
Given that the Manifest is located at the given absolute path
, find
the absolute root directory for the “unpacked” Bundle directory.
Useful when “imploding” a directory into a bundle to determine the
default location of the generated Bundle file.
This will only be different than the Manifest path itself if the Manifest::path impl specifies a nested path.
Will return None if the path
does not actually end with the
manifest relative path, meaning that either the manifest file is
misplaced within the unpacked directory, or an incorrect path was
supplied.
sourcepub async fn unpack_yaml(
&self,
base_path: &Path,
force: bool
) -> impl Future<Output = Result<(), MrBundleError>>
pub async fn unpack_yaml(
&self,
base_path: &Path,
force: bool
) -> impl Future<Output = Result<(), MrBundleError>>
Create a directory which contains the manifest as a YAML file,
and each resource written to its own file (as raw bytes)
The paths of the resources are specified by the paths of the bundle,
and the path of the manifest file is specified by the Manifest::path
trait method implementation of the M
type.
Trait Implementations
sourceimpl AsRef<Bundle<ValidatedDnaManifest>> for DnaBundle
impl AsRef<Bundle<ValidatedDnaManifest>> for DnaBundle
sourcefn as_ref(&self) -> &Bundle<ValidatedDnaManifest>
fn as_ref(&self) -> &Bundle<ValidatedDnaManifest>
Converts this type into a shared reference of the (usually inferred) input type.
sourceimpl Borrow<Bundle<ValidatedDnaManifest>> for DnaBundle
impl Borrow<Bundle<ValidatedDnaManifest>> for DnaBundle
sourcefn borrow(&self) -> &Bundle<ValidatedDnaManifest>
fn borrow(&self) -> &Bundle<ValidatedDnaManifest>
Immutably borrows from an owned value. Read more
sourceimpl<'de> Deserialize<'de> for DnaBundle
impl<'de> Deserialize<'de> for DnaBundle
sourcefn 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
sourceimpl From<Bundle<ValidatedDnaManifest>> for DnaBundle
impl From<Bundle<ValidatedDnaManifest>> for DnaBundle
sourcefn from(original: Bundle<ValidatedDnaManifest>) -> DnaBundle
fn from(original: Bundle<ValidatedDnaManifest>) -> DnaBundle
Converts to this type from the input type.
sourceimpl PartialEq<DnaBundle> for DnaBundle
impl PartialEq<DnaBundle> for DnaBundle
sourceimpl TryFrom<&DnaBundle> for SerializedBytes
impl TryFrom<&DnaBundle> for SerializedBytes
type Error = SerializedBytesError
type Error = SerializedBytesError
The type returned in the event of a conversion error.
sourcefn try_from(t: &DnaBundle) -> Result<SerializedBytes, SerializedBytesError>
fn try_from(t: &DnaBundle) -> Result<SerializedBytes, SerializedBytesError>
Performs the conversion.
sourceimpl TryFrom<DnaBundle> for SerializedBytes
impl TryFrom<DnaBundle> for SerializedBytes
type Error = SerializedBytesError
type Error = SerializedBytesError
The type returned in the event of a conversion error.
sourcefn try_from(t: DnaBundle) -> Result<SerializedBytes, SerializedBytesError>
fn try_from(t: DnaBundle) -> Result<SerializedBytes, SerializedBytesError>
Performs the conversion.
sourceimpl TryFrom<SerializedBytes> for DnaBundle
impl TryFrom<SerializedBytes> for DnaBundle
type Error = SerializedBytesError
type Error = SerializedBytesError
The type returned in the event of a conversion error.
sourcefn try_from(sb: SerializedBytes) -> Result<DnaBundle, SerializedBytesError>
fn try_from(sb: SerializedBytes) -> Result<DnaBundle, SerializedBytesError>
Performs the conversion.
impl Eq for DnaBundle
impl StructuralEq for DnaBundle
impl StructuralPartialEq for DnaBundle
Auto Trait Implementations
impl RefUnwindSafe for DnaBundle
impl Send for DnaBundle
impl Sync for DnaBundle
impl Unpin for DnaBundle
impl UnwindSafe for DnaBundle
Blanket Implementations
impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
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.
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
Mutably borrows from an owned value. Read more
impl<F, W, T, D> Deserialize<With<T, W>, D> for Fwhere
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
impl<F, W, T, D> Deserialize<With<T, W>, D> for Fwhere
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
Deserializes using the given deserializer
sourceimpl<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
Compare self to key
and return true
if they are equal.
impl<T> FutureExt for T
impl<T> FutureExt for T
fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<T> Pointable for T
impl<T> Pointable for T
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if self
is actually part of its subset T
(and can be converted to it).
fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as self.to_subset
but without any property checks. Always succeeds.
fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts self
to the equivalent element of its superset.
impl<V, T> VZip<V> for Twhere
V: MultiLane<T>,
impl<V, T> VZip<V> for Twhere
V: MultiLane<T>,
fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more