pub struct ActorMeshRef<A: Referable> { /* private fields */ }Expand description
A reference to a stable snapshot of an ActorMesh.
Implementations§
Source§impl<A: Referable> ActorMeshRef<A>
impl<A: Referable> ActorMeshRef<A>
Sourcepub fn cast<M>(&self, cx: &impl Actor, message: M) -> Result<()>
pub fn cast<M>(&self, cx: &impl Actor, message: M) -> Result<()>
Cast a message to all the actors in this mesh
Sourcepub fn cast_with_headers<M>(
&self,
cx: &impl Actor,
caller_headers: &Flattrs,
message: M,
) -> Result<()>
pub fn cast_with_headers<M>( &self, cx: &impl Actor, caller_headers: &Flattrs, message: M, ) -> Result<()>
Cast a message to all the actors in this mesh, merging
caller-supplied caller_headers into the per-rank envelope
headers before send. Used to propagate caller-known context
(e.g. operation-context keys marked with OPERATION_CONTEXT_HEADER)
onto the outgoing request so receivers can project it back
onto replies.
Sourcepub fn cast_choose_with_headers<M>(
&self,
cx: &impl Actor,
caller_headers: &Flattrs,
message: M,
) -> Result<()>
pub fn cast_choose_with_headers<M>( &self, cx: &impl Actor, caller_headers: &Flattrs, message: M, ) -> Result<()>
Cast a message to one randomly chosen actor in this mesh, merging
caller-supplied caller_headers into the outgoing envelope.
pub fn id(&self) -> &ActorMeshId
pub fn controller(&self) -> &Option<ActorRef<ActorMeshController<A>>>
Sourcepub async fn next_supervision_event(
&self,
cx: &impl Actor,
) -> Result<MeshFailure, Error>
pub async fn next_supervision_event( &self, cx: &impl Actor, ) -> Result<MeshFailure, Error>
Returns the next supervision event occurring on this mesh. Await this simultaneously with the return result of a message (such as awaiting a reply after a cast) to get back a message that indicates the actor that failed, instead of waiting forever for a reply. If there are multiple simultaneous awaits of next_supervision_event, all of them will receive the same event.
Sourcepub fn clone_with_supervision_receiver(&self) -> Self
pub fn clone_with_supervision_receiver(&self) -> Self
Same as Clone, but includes a shared supervision receiver. This copy will share the same health state and get the same supervision events. Will have a separate cache.
Trait Implementations§
Source§impl<A: Referable> Clone for ActorMeshRef<A>
impl<A: Referable> Clone for ActorMeshRef<A>
Source§impl<A: Referable> Debug for ActorMeshRef<A>
impl<A: Referable> Debug for ActorMeshRef<A>
Source§impl<'de, A: Referable> Deserialize<'de> for ActorMeshRef<A>
impl<'de, A: Referable> Deserialize<'de> for ActorMeshRef<A>
Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Source§impl<A: Referable> Display for ActorMeshRef<A>
impl<A: Referable> Display for ActorMeshRef<A>
Source§impl<A: Referable> Hash for ActorMeshRef<A>
impl<A: Referable> Hash for ActorMeshRef<A>
Source§impl<A: Referable + Named> Named for ActorMeshRef<A>
impl<A: Referable + Named> Named for ActorMeshRef<A>
Source§fn typename() -> &'static str
fn typename() -> &'static str
Source§fn typehash() -> u64
fn typehash() -> u64
Source§fn typeid() -> TypeId
fn typeid() -> TypeId
Source§impl<A: Referable> PartialEq for ActorMeshRef<A>
impl<A: Referable> PartialEq for ActorMeshRef<A>
Source§impl<A: Referable> Ranked for ActorMeshRef<A>
impl<A: Referable> Ranked for ActorMeshRef<A>
Source§impl<A: Referable> RankedSliceable for ActorMeshRef<A>
impl<A: Referable> RankedSliceable for ActorMeshRef<A>
Source§fn sliced(&self, region: Region) -> Self
fn sliced(&self, region: Region) -> Self
Return a pure slice of this actor mesh.
This method cannot install routing state because the trait has no caller context. Instead it carries a lazy cast-domain descriptor. The first cast through the returned ref posts setup from that caller before sending the cast message, preserving normal sender-side stream ordering.
Source§impl<A: Referable> Serialize for ActorMeshRef<A>
impl<A: Referable> Serialize for ActorMeshRef<A>
impl<A: Referable> Eq for ActorMeshRef<A>
Auto Trait Implementations§
impl<A> !Freeze for ActorMeshRef<A>
impl<A> RefUnwindSafe for ActorMeshRef<A>
impl<A> Send for ActorMeshRef<A>
impl<A> Sync for ActorMeshRef<A>
impl<A> Unpin for ActorMeshRef<A>
impl<A> UnsafeUnpin for ActorMeshRef<A>
impl<A> UnwindSafe for ActorMeshRef<A>
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§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>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Layered].Source§impl<T> MapIntoExt for Twhere
T: Ranked,
impl<T> MapIntoExt for Twhere
T: Ranked,
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§impl<T> QuoteExt for Twhere
T: ?Sized,
impl<T> QuoteExt for Twhere
T: ?Sized,
fn push_quoted<'q, Q, S>(&mut self, _q: Q, s: S)where
Q: QuoteInto<T>,
S: Into<Quotable<'q>>,
Source§impl<T> Serialize for T
impl<T> Serialize for T
fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<(), Error>
fn do_erased_serialize( &self, serializer: &mut dyn Serializer, ) -> Result<(), ErrorImpl>
§impl<T> ToSmolStr for T
impl<T> ToSmolStr for T
fn to_smolstr(&self) -> SmolStr
Source§impl<T> ViewExt for Twhere
T: View,
impl<T> ViewExt for Twhere
T: View,
Source§fn range<R>(&self, dim: &str, range: R) -> Result<<T as View>::View, ViewError>
fn range<R>(&self, dim: &str, range: R) -> Result<<T as View>::View, ViewError>
Source§fn group_by(
&self,
dim: &str,
) -> Result<impl Iterator<Item = <T as View>::View>, ViewError>
fn group_by( &self, dim: &str, ) -> Result<impl Iterator<Item = <T as View>::View>, ViewError>
dim. The returned iterator enumerates all groups
as views in the extent of dim to the last dimension of the view. Read more