Struct holochain::core::ribosome::guest_callback::validation_package::ValidationPackageInvocation
source · [−]pub struct ValidationPackageInvocation { /* private fields */ }
Implementations
sourceimpl ValidationPackageInvocation
impl ValidationPackageInvocation
pub fn new(zome: IntegrityZome, app_entry_type: AppEntryType) -> Self
Trait Implementations
sourceimpl Clone for ValidationPackageInvocation
impl Clone for ValidationPackageInvocation
sourcefn clone(&self) -> ValidationPackageInvocation
fn clone(&self) -> ValidationPackageInvocation
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresourceimpl Invocation for ValidationPackageInvocation
impl Invocation for ValidationPackageInvocation
sourcefn 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. Read more
sourcefn 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;
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 moresourcefn 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 Read more
fn auth(&self) -> InvocationAuth
sourceimpl TryFrom<ValidationPackageInvocation> for ExternIO
impl TryFrom<ValidationPackageInvocation> for ExternIO
type Error = SerializedBytesError
type Error = SerializedBytesError
The type returned in the event of a conversion error.
sourcefn try_from(
validation_package_invocation: ValidationPackageInvocation
) -> Result<Self, Self::Error>
fn try_from(
validation_package_invocation: ValidationPackageInvocation
) -> Result<Self, Self::Error>
Performs the conversion.
Auto Trait Implementations
impl !RefUnwindSafe for ValidationPackageInvocation
impl Send for ValidationPackageInvocation
impl Sync for ValidationPackageInvocation
impl Unpin for ValidationPackageInvocation
impl !UnwindSafe for ValidationPackageInvocation
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 Read more
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
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>
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 morefn 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.