Struct holochain::core::ribosome::real_ribosome::RealRibosome
source · [−]pub struct RealRibosome {
pub dna_file: DnaFile,
}
Expand description
The only RealRibosome is a Wasm ribosome. note that this is cloned on every invocation so keep clones cheap!
Fields
dna_file: DnaFile
Implementations
sourceimpl RealRibosome
impl RealRibosome
pub fn dna_file(&self) -> &DnaFile
pub fn module(&self, zome_name: &ZomeName) -> RibosomeResult<Arc<Module>>
pub fn wasm_cache_key(&self, zome_name: &ZomeName) -> Result<[u8; 32], DnaError>
pub fn cache_instance(
&self,
context_key: u64,
instance: Arc<Mutex<Instance>>,
zome_name: &ZomeName
) -> RibosomeResult<()>
pub fn instance(
&self,
call_context: CallContext
) -> RibosomeResult<(Arc<Mutex<Instance>>, u64)>
Trait Implementations
sourceimpl Clone for RealRibosome
impl Clone for RealRibosome
sourcefn clone(&self) -> RealRibosome
fn clone(&self) -> RealRibosome
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 more
sourceimpl Debug for RealRibosome
impl Debug for RealRibosome
sourceimpl RibosomeT for RealRibosome
impl RibosomeT for RealRibosome
sourcefn maybe_call<I: Invocation>(
&self,
host_context: HostContext,
invocation: &I,
zome: &Zome,
to_call: &FunctionName
) -> Result<Option<ExternIO>, RibosomeError>
fn maybe_call<I: Invocation>(
&self,
host_context: HostContext,
invocation: &I,
zome: &Zome,
to_call: &FunctionName
) -> Result<Option<ExternIO>, RibosomeError>
call a function in a zome for an invocation if it exists if it does not exist then return Ok(None)
sourcefn call_zome_function(
&self,
host_access: ZomeCallHostAccess,
invocation: ZomeCallInvocation
) -> RibosomeResult<ZomeCallResponse>
fn call_zome_function(
&self,
host_access: ZomeCallHostAccess,
invocation: ZomeCallInvocation
) -> RibosomeResult<ZomeCallResponse>
Runs the specified zome fn. Returns the cursor used by HDK, so that it can be passed on to source chain manager for transactional writes
sourcefn run_post_commit(
&self,
host_access: PostCommitHostAccess,
invocation: PostCommitInvocation
) -> RibosomeResult<()>
fn run_post_commit(
&self,
host_access: PostCommitHostAccess,
invocation: PostCommitInvocation
) -> RibosomeResult<()>
Post commit works a bit different to the other callbacks. As it is dispatched from a spawned task there is nothing to handle any result, good or bad, other than to maybe log some error.
fn dna_def(&self) -> &DnaDefHashed
fn zome_info(&self, zome: Zome) -> RibosomeResult<ZomeInfo>
fn call_iterator<I: Invocation>(
&self,
host_context: HostContext,
invocation: I
) -> CallIterator<Self, I>
fn run_genesis_self_check(
&self,
host_access: GenesisSelfCheckHostAccess,
invocation: GenesisSelfCheckInvocation
) -> RibosomeResult<GenesisSelfCheckResult>
sourcefn run_validate(
&self,
host_access: ValidateHostAccess,
invocation: ValidateInvocation
) -> RibosomeResult<ValidateResult>
fn run_validate(
&self,
host_access: ValidateHostAccess,
invocation: ValidateInvocation
) -> RibosomeResult<ValidateResult>
Helper function for running a validation callback. Just calls
[run_callback
][] under the hood.
[run_callback
]: #method.run_callback Read more
fn run_init(
&self,
host_access: InitHostAccess,
invocation: InitInvocation
) -> RibosomeResult<InitResult>
fn run_entry_defs(
&self,
host_access: EntryDefsHostAccess,
invocation: EntryDefsInvocation
) -> RibosomeResult<EntryDefsResult>
fn run_migrate_agent(
&self,
host_access: MigrateAgentHostAccess,
invocation: MigrateAgentInvocation
) -> RibosomeResult<MigrateAgentResult>
fn run_validation_package(
&self,
host_access: ValidationPackageHostAccess,
invocation: ValidationPackageInvocation
) -> RibosomeResult<ValidationPackageResult>
fn zomes_to_invoke(&self, zomes_to_invoke: ZomesToInvoke) -> Vec<Zome>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
A: Allocator,
fn zome_to_id(&self, zome: &Zome) -> RibosomeResult<ZomeId>
sourcefn list_callbacks(&self)
fn list_callbacks(&self)
@todo list out all the available callbacks and maybe cache them somewhere
sourcefn list_zome_fns(&self)
fn list_zome_fns(&self)
@todo list out all the available zome functions and maybe cache them somewhere
Auto Trait Implementations
impl !RefUnwindSafe for RealRibosome
impl Send for RealRibosome
impl Sync for RealRibosome
impl Unpin for RealRibosome
impl !UnwindSafe for RealRibosome
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
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 T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
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<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>
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.
sourcefn clone_into(&self, target: &mut T)
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>,
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