pub struct ActorRef {
pub kind: String,
pub id: String,
}Expand description
Caller identity. kind distinguishes user vs agent vs lambda etc.
Invariant: both kind and id must be non-empty. Enforced at construction
and deserialization via serde(try_from).
Fields§
§kind: String§id: StringImplementations§
Source§impl ActorRef
impl ActorRef
Sourcepub fn try_new(
kind: impl Into<String>,
id: impl Into<String>,
) -> Result<Self, GateValidationError>
pub fn try_new( kind: impl Into<String>, id: impl Into<String>, ) -> Result<Self, GateValidationError>
Create a validated ActorRef. Returns Err if kind or id is empty.
Sourcepub fn new(kind: impl Into<String>, id: impl Into<String>) -> Self
pub fn new(kind: impl Into<String>, id: impl Into<String>) -> Self
Create a validated ActorRef. Panics if kind or id is empty.
Sourcepub fn is_anonymous(&self) -> bool
pub fn is_anonymous(&self) -> bool
Whether this actor is the implicit anonymous caller.
Sourcepub fn binding_id(&self) -> Option<&str>
pub fn binding_id(&self) -> Option<&str>
The identity to use for actor-binding resolution: None for the
anonymous caller, Some(&self.id) otherwise.
Invariant: anonymous identity never participates in actor-binding
resolution. anonymous() carries id: "local", which is a valid
explicit-binding value (e.g. actor="local"); resolving on it
would let an unauthenticated caller match a binding that a
pre-actor-aware None could never match.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for ActorRef
impl<'de> Deserialize<'de> for ActorRef
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>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for ActorRef
impl StructuralPartialEq for ActorRef
Auto Trait Implementations§
impl Freeze for ActorRef
impl RefUnwindSafe for ActorRef
impl Send for ActorRef
impl Sync for ActorRef
impl Unpin for ActorRef
impl UnsafeUnpin for ActorRef
impl UnwindSafe for ActorRef
Blanket Implementations§
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
Mutably borrows from an owned value. Read more