pub struct Cell<Api = CellConductorApi, P2pCell = HolochainP2pDna> where
    Api: CellConductorApiT,
    P2pCell: HolochainP2pDnaT
{ /* private fields */ }
Expand description

A Cell is a grouping of the resources necessary to run workflows on behalf of an agent. It does not have a lifetime of its own aside from the lifetimes of the resources which it holds references to. Any work it does is through running a workflow, passing references to the resources needed to complete that workflow.

A Cell is guaranteed to contain a Source Chain which has undergone Genesis.

The [Conductor] manages a collection of Cells, and will call functions on the Cell when a Conductor API method is called (either a CellConductorApi or an [AppInterfaceApi])

Implementations

Constructor for a Cell, which ensure the Cell is fully initialized before returning.

If it hasn’t happened already, a SourceChain will be created, and genesis will be run. If these have already happened, those steps are skipped.

No Cell will be created if the SourceChain is not ready to be used.

Performs the Genesis workflow the Cell, ensuring that its initial elements are committed. This is a prerequisite for any other interaction with the SourceChain

Accessor

Access a network sender that is partially applied to this cell’s DnaHash/AgentPubKey

Entry point for incoming messages from the network that need to be handled

Function called by the Conductor

Clean up long-running managed tasks.

Trait Implementations

Formats the value using the given formatter. Read more

Feeds this value into the given Hasher. Read more

Feeds a slice of this type into the given Hasher. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

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

The archived version of the pointer metadata for this type.

Converts some archived metadata to the pointer metadata for itself.

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Attaches the provided Context to this type, returning a WithContext wrapper. Read more

Attaches the current Context to this type, returning a WithContext wrapper. Read more

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The alignment of pointer.

The type for initializers.

Initializes a with the given initializer. Read more

Dereferences the given pointer. Read more

Mutably dereferences the given pointer. Read more

Drops the object pointed to by the given pointer. Read more

The type for metadata in pointers and references to Self.

Should always be Self

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

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