[−][src]Enum holochain_core_types::dna::bridges::BridgeReference
This enum represents the two different ways of referring to another DNA instance. If we know a priori what exact version of another DNA we want to bridge to we can specify the DNA address (i.e. hash) and lock it in. Often, we need more flexibility when
- the other DNA gets replaced by a newer version
- the other DNA gets created from a template and thus we don't know the exact hash during build-time
- we want to build a complex system of components that should be pluggable. Bridges can therefore also be specified by traits. That means we specify a list of functions with their signatures and allow the conductor (through the conductor bridge config) to resolve this bridge by any DNA instance that implements all specified functions, just like a dynamic binding of function calls.
Variants
A bridge reference that defines another DNA statically by its address (i.e. hash). If this variant is used the other DNA gets locked in as per DNA address
Fields of Address
dna_address: Address
A bridge reference that defines another DNA loosely by expecting a DNA that implements a given set of traits, i.e. that has specific sets of zome functions with matching signatures.
Trait Implementations
impl Clone for BridgeReference
[src]
fn clone(&self) -> BridgeReference
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl PartialEq<BridgeReference> for BridgeReference
[src]
fn eq(&self, other: &BridgeReference) -> bool
[src]
fn ne(&self, other: &BridgeReference) -> bool
[src]
impl Debug for BridgeReference
[src]
impl Hash for BridgeReference
[src]
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl StructuralPartialEq for BridgeReference
[src]
impl Serialize for BridgeReference
[src]
fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error> where
__S: Serializer,
[src]
__S: Serializer,
impl<'de> Deserialize<'de> for BridgeReference
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
__D: Deserializer<'de>,
Auto Trait Implementations
impl Send for BridgeReference
impl Sync for BridgeReference
impl Unpin for BridgeReference
impl UnwindSafe for BridgeReference
impl RefUnwindSafe for BridgeReference
Blanket Implementations
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From<T> for T
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> DeserializeOwned for T where
T: Deserialize<'de>,
[src]
T: Deserialize<'de>,
impl<T> Clone for T where
T: Clone,
[src]
T: Clone,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,