Struct holochain::core::ribosome::guest_callback::validate::ValidateInvocation [−][src]
pub struct ValidateInvocation {
pub zomes_to_invoke: ZomesToInvoke,
pub element: Arc<Element>,
pub validation_package: Option<Arc<ValidationPackage>>,
pub entry_def_id: Option<EntryDefId>,
}
Fields
zomes_to_invoke: ZomesToInvoke
element: Arc<Element>
validation_package: Option<Arc<ValidationPackage>>
Only elements with an app entry will have a validation package
entry_def_id: Option<EntryDefId>
The EntryDefId for the entry associated with this element if there is one.
Trait Implementations
Performs the conversion.
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. Read more
fn fn_components(&self) -> FnComponentsⓘNotable traits for FnComponentsimpl Iterator for FnComponents type Item = String;
fn fn_components(&self) -> FnComponentsⓘNotable traits for FnComponentsimpl Iterator for FnComponents type Item = String;
impl Iterator for FnComponents type Item = String;
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). Read more
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 Read more
Auto Trait Implementations
impl !RefUnwindSafe for ValidateInvocation
impl Send for ValidateInvocation
impl Sync for ValidateInvocation
impl Unpin for ValidateInvocation
impl !UnwindSafe for ValidateInvocation
Blanket Implementations
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
type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
pub fn pointer_metadata(
&<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
pub fn pointer_metadata(
&<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
Mutably borrows from an owned value. Read more
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>
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
pub fn vzip(self) -> V
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more