pub struct NetMessageBuilder { /* private fields */ }Expand description
Fluent builder for constructing network messages
§Examples
use lnmp_core::{LnmpRecord, LnmpField, LnmpValue};
use lnmp_envelope::EnvelopeBuilder;
use lnmp_net::{MessageKind, NetMessageBuilder};
let mut record = LnmpRecord::new();
record.add_field(LnmpField { fid: 12, value: LnmpValue::Int(42) });
let envelope = EnvelopeBuilder::new(record)
.timestamp(1700000000000)
.source("service-a")
.build();
let msg = NetMessageBuilder::new(envelope, MessageKind::Alert)
.priority(255)
.ttl_ms(1000)
.class("safety")
.build();
assert_eq!(msg.priority, 255);
assert_eq!(msg.class, Some("safety".to_string()));Implementations§
Source§impl NetMessageBuilder
impl NetMessageBuilder
Sourcepub fn new(envelope: LnmpEnvelope, kind: MessageKind) -> Self
pub fn new(envelope: LnmpEnvelope, kind: MessageKind) -> Self
Creates a new builder with defaults from MessageKind
Sourcepub fn build(self) -> NetMessage
pub fn build(self) -> NetMessage
Builds the NetMessage
Auto Trait Implementations§
impl Freeze for NetMessageBuilder
impl RefUnwindSafe for NetMessageBuilder
impl Send for NetMessageBuilder
impl Sync for NetMessageBuilder
impl Unpin for NetMessageBuilder
impl UnwindSafe for NetMessageBuilder
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