Struct bastion::distributed::DistributedContext [−][src]
distributed
only.Distributed context that holds currently formed/forming cluster's context.
Implementations
impl DistributedContext
[src]
pub fn local_ctx(&self) -> &BastionContext
[src]
Exposes local bastion context to distributed actor
pub fn current(&self) -> Uuid
[src]
Gets the current member's node id in the cluster
This shouldn't be confused with content addressing of actors in the application.
pub fn members(&self) -> Vec<ArtilleryMember>
[src]
Get current members of the cluster.
This list is continuously updates with cluster state. If a node is down it won't appear in this list. If a node is suspected, it will still be in here. When suspected message delivery isn't guaranteed.
pub fn tell<M>(&self, to: &Uuid, msg: M) -> Result<(), M> where
M: Message + AsRef<str>,
[src]
M: Message + AsRef<str>,
Send a fire and forget style message to a destined cluster member. Message needs to be stringified or apply the rules of bastion's Message trait.
pub async fn recv(&self) -> Result<ClusterMessage, ()>
[src]
Channel that aggregates incoming cluster events to this node.
Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for DistributedContext
[src]
impl Send for DistributedContext
[src]
impl Sync for DistributedContext
[src]
impl Unpin for DistributedContext
[src]
impl !UnwindSafe for DistributedContext
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> AsAny for T where
T: Any,
[src]
T: Any,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Message for T where
T: Any + Send + Sync + Debug,
[src]
T: Any + Send + Sync + Debug,
impl<T> Pointable for T
pub const ALIGN: usize
type Init = T
The type for initializers.
pub unsafe fn init(init: <T as Pointable>::Init) -> usize
pub unsafe fn deref<'a>(ptr: usize) -> &'a T
pub unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T
pub unsafe fn drop(ptr: usize)
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> State for T where
T: Send + Sync + 'static,
[src]
T: Send + Sync + 'static,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,