pub enum PeerMessage {
Hello {
from: PeerId,
capabilities: Vec<PeerCapability>,
},
Broadcast {
from: PeerId,
topic: String,
payload: Value,
},
Direct {
from: PeerId,
to: PeerId,
payload: Value,
},
Task {
from: PeerId,
task_id: String,
spec: Value,
issued_at: DateTime<Utc>,
},
Result {
from: PeerId,
task_id: String,
result: Value,
ok: bool,
},
}Expand description
One message on the mesh.
Variants§
Hello
First message after a connection establishes — peers identify themselves and advertise capabilities.
Broadcast
Fanout publish to every peer subscribed to topic.
Direct
Point-to-point delivery.
Task
Distributed task assignment.
Fields
Result
Result of a previously-issued PeerMessage::Task.
Implementations§
Trait Implementations§
Source§impl Clone for PeerMessage
impl Clone for PeerMessage
Source§fn clone(&self) -> PeerMessage
fn clone(&self) -> PeerMessage
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PeerMessage
impl Debug for PeerMessage
Source§impl<'de> Deserialize<'de> for PeerMessage
impl<'de> Deserialize<'de> for PeerMessage
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
Auto Trait Implementations§
impl Freeze for PeerMessage
impl RefUnwindSafe for PeerMessage
impl Send for PeerMessage
impl Sync for PeerMessage
impl Unpin for PeerMessage
impl UnsafeUnpin for PeerMessage
impl UnwindSafe for PeerMessage
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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>
Converts
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>
Converts
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