pub struct PythonClientRoot { /* private fields */ }Expand description
The Python-bootstrapped client root: the root client instance plus the
client proc mesh registered by bootstrap_host. Discovered by
python_client_root for callers that need the stable Python root.
Implementations§
Source§impl PythonClientRoot
impl PythonClientRoot
Sourcepub async fn spawn_controllerless_owner<A: RemoteSpawn>(
&self,
name: &str,
params: &A::Params,
) -> Result<ActorRef<A>>where
A::Params: RemoteMessage,
pub async fn spawn_controllerless_owner<A: RemoteSpawn>(
&self,
name: &str,
params: &A::Params,
) -> Result<ActorRef<A>>where
A::Params: RemoteMessage,
Spawn a controllerless owner actor on the client root’s proc mesh,
using the root’s own stable client instance as the caller context, and
return its typed ActorRef<A>.
The Python client-root proc mesh is a singleton (one proc), so the
spawned mesh has exactly one rank. This validates that invariant and
returns rank 0’s actor reference, encoding the single-owner contract in
the return type and letting callers use the generated RefClient
methods. The intermediate ActorMesh is dropped once the ref is
extracted; its Drop is inert, so this does not tear the owner down.
Method-only by design: the owner must be spawned with the long-lived
root cx, never an arbitrary (possibly short-lived) caller context.
Auto Trait Implementations§
impl !RefUnwindSafe for PythonClientRoot
impl !UnwindSafe for PythonClientRoot
impl Freeze for PythonClientRoot
impl Send for PythonClientRoot
impl Sync for PythonClientRoot
impl Unpin for PythonClientRoot
impl UnsafeUnpin for PythonClientRoot
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
§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].