Struct holochain_types::prelude::DnaDef
source · [−]pub struct DnaDef {
pub name: String,
pub uid: String,
pub properties: SerializedBytes,
pub zomes: Vec<(ZomeName, ZomeDef), Global>,
}
Expand description
The definition of a DNA: the hash of this data is what produces the DnaHash.
Historical note: This struct was written before DnaManifest
appeared.
It is included as part of a DnaFile
. There is still a lot of code that uses
this type, but in function, it has mainly been superseded by DnaManifest
.
TODO: after removing the InstallApp
admin method, we can remove the Serialize
impl on this type, and document it/rename it to show that it is
basically a fully validated, normalized DnaManifest
Fields
name: String
The friendly “name” of a Holochain DNA.
uid: String
A UID for uniquifying this Dna.
properties: SerializedBytes
Any arbitrary application properties can be included in this object.
zomes: Vec<(ZomeName, ZomeDef), Global>
A vector of zomes associated with your DNA.
Implementations
sourceimpl DnaDef
impl DnaDef
sourcepub fn get_wasm_zome(
&self,
zome_name: &ZomeName
) -> Result<&WasmZome, ZomeError>
pub fn get_wasm_zome(
&self,
zome_name: &ZomeName
) -> Result<&WasmZome, ZomeError>
Return a Zome, error if not a WasmZome
sourcepub fn modify_phenotype(
&self,
uid: String,
properties: SerializedBytes
) -> DnaDef
pub fn modify_phenotype(
&self,
uid: String,
properties: SerializedBytes
) -> DnaDef
Change the “phenotype” of this DNA – the UID and properties – while leaving the “genotype” of actual DNA code intact
Trait Implementations
sourceimpl<'de> Deserialize<'de> for DnaDef
impl<'de> Deserialize<'de> for DnaDef
sourcepub fn deserialize<__D>(
__deserializer: __D
) -> Result<DnaDef, <__D as Deserializer<'de>>::Error> where
__D: Deserializer<'de>,
pub fn deserialize<__D>(
__deserializer: __D
) -> Result<DnaDef, <__D as Deserializer<'de>>::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
sourceimpl HashableContent for DnaDef
impl HashableContent for DnaDef
sourcepub fn hash_type(&self) -> <DnaDef as HashableContent>::HashType
pub fn hash_type(&self) -> <DnaDef as HashableContent>::HashType
The HashType which this content will be hashed to
sourcepub fn hashable_content(&self) -> HashableContentBytes
pub fn hashable_content(&self) -> HashableContentBytes
Return a subset of the content, either as SerializedBytes “content”, which will be used to compute the hash, or as an already precomputed hash which will be used directly Read more
sourceimpl Serialize for DnaDef
impl Serialize for DnaDef
sourcepub fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error> where
__S: Serializer,
pub 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
sourceimpl<'_> TryFrom<&'_ DnaDef> for SerializedBytes
impl<'_> TryFrom<&'_ DnaDef> for SerializedBytes
type Error = SerializedBytesError
type Error = SerializedBytesError
The type returned in the event of a conversion error.
sourcepub fn try_from(t: &DnaDef) -> Result<SerializedBytes, SerializedBytesError>
pub fn try_from(t: &DnaDef) -> Result<SerializedBytes, SerializedBytesError>
Performs the conversion.
sourceimpl TryFrom<DnaDef> for SerializedBytes
impl TryFrom<DnaDef> for SerializedBytes
type Error = SerializedBytesError
type Error = SerializedBytesError
The type returned in the event of a conversion error.
sourcepub fn try_from(t: DnaDef) -> Result<SerializedBytes, SerializedBytesError>
pub fn try_from(t: DnaDef) -> Result<SerializedBytes, SerializedBytesError>
Performs the conversion.
sourceimpl TryFrom<SerializedBytes> for DnaDef
impl TryFrom<SerializedBytes> for DnaDef
type Error = SerializedBytesError
type Error = SerializedBytesError
The type returned in the event of a conversion error.
sourcepub fn try_from(sb: SerializedBytes) -> Result<DnaDef, SerializedBytesError>
pub fn try_from(sb: SerializedBytes) -> Result<DnaDef, SerializedBytesError>
Performs the conversion.
impl Eq for DnaDef
impl StructuralEq for DnaDef
impl StructuralPartialEq for DnaDef
Auto Trait Implementations
impl !RefUnwindSafe for DnaDef
impl Send for DnaDef
impl Sync for DnaDef
impl Unpin for DnaDef
impl !UnwindSafe for DnaDef
Blanket Implementations
impl<T> Any for T where
T: Any + ?Sized,
impl<T> Any for T where
T: Any + ?Sized,
fn type_id_compat(&self) -> TypeId
fn type_id_compat(&self) -> TypeId
TODO: once 1.33.0 is the minimum supported compiler version, remove Any::type_id_compat and use StdAny::type_id instead. https://github.com/rust-lang/rust/issues/27745 Read more
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcepub fn equivalent(&self, key: &K) -> bool
pub 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, C> HashableContentExtSync<T> for C where
T: HashTypeSync,
C: HashableContent<HashType = T>,
impl<T, C> HashableContentExtSync<T> for C where
T: HashTypeSync,
C: HashableContent<HashType = T>,
sourcepub fn into_hashed(self) -> HoloHashed<C>
pub fn into_hashed(self) -> HoloHashed<C>
Move into a HoloHashed
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
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
pub 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