Struct holochain::core::ribosome::guest_callback::genesis_self_check::GenesisSelfCheckInvocation
source · pub struct GenesisSelfCheckInvocation {
pub payload: Arc<GenesisSelfCheckData>,
}
Fields§
§payload: Arc<GenesisSelfCheckData>
Trait Implementations§
source§impl Clone for GenesisSelfCheckInvocation
impl Clone for GenesisSelfCheckInvocation
source§fn clone(&self) -> GenesisSelfCheckInvocation
fn clone(&self) -> GenesisSelfCheckInvocation
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Invocation for GenesisSelfCheckInvocation
impl Invocation for GenesisSelfCheckInvocation
source§fn zomes(&self) -> ZomesToInvoke
fn zomes(&self) -> ZomesToInvoke
Some invocations call into a single zome and some call into many or all zomes.
An example of an invocation that calls across all zomes is init. Init must pass for every
zome in order for the Dna overall to successfully init.
An example of an invocation that calls a single zome is validation of an entry, because
the entry is only defined in a single zome, so it only makes sense for that exact zome to
define the validation logic for that entry.
In the future this may be expanded to support a subset of zomes that is larger than one.
For example, we may want to trigger a callback in all zomes that implement a
trait/interface, but this doesn’t exist yet, so the only valid options are All or One.
source§fn fn_components(&self) -> FnComponents ⓘ
fn fn_components(&self) -> FnComponents ⓘ
Invocations execute in a “sparse” manner of decreasing specificity. In technical terms this
means that the list of strings in FnComponents will be concatenated into a single function
name to be called, then the last string will be removed and a shorter function name will
be attempted and so on until all variations have been attempted.
For example, if FnComponents was vec![“foo”, “bar”, “baz”] it would loop as “foo_bar_baz”
then “foo_bar” then “foo”. All of those three callbacks that are defined will be called
unless a definitive callback result is returned.
See
CallbackResult::is_definitive
in zome_types.
All of the individual callback results are then folded into a single overall result value
as a From implementation on the invocation results structs (e.g. zome results vs. ribosome
results).source§fn host_input(self) -> Result<ExternIO, SerializedBytesError>
fn host_input(self) -> Result<ExternIO, SerializedBytesError>
the serialized input from the host for the wasm call
this is intentionally NOT a reference to self because ExternIO may be huge we want to be
careful about cloning invocations
fn auth(&self) -> InvocationAuth
Auto Trait Implementations§
impl RefUnwindSafe for GenesisSelfCheckInvocation
impl Send for GenesisSelfCheckInvocation
impl Sync for GenesisSelfCheckInvocation
impl Unpin for GenesisSelfCheckInvocation
impl UnwindSafe for GenesisSelfCheckInvocation
Blanket Implementations§
§impl<T> Any for Twhere
T: Any + ?Sized,
impl<T> Any for Twhere
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
§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.
§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
§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> ⓘ
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
source§fn 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<T> Upcastable for Twhere
T: Any + Send + Sync + 'static,
impl<T> Upcastable for Twhere
T: Any + Send + Sync + 'static,
§fn upcast_any_ref(&self) -> &(dyn Any + 'static)
fn upcast_any_ref(&self) -> &(dyn Any + 'static)
upcast ref
§fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
upcast mut ref