pub struct ZeroCopyMessage {
pub topic: Arc<str>,
pub partition: u32,
pub key: Option<BufferRef>,
pub value: BufferRef,
pub headers: Vec<(Arc<str>, BufferRef)>,
pub timestamp: i64,
}Expand description
Zero-copy message for production Holds references to data without copying
Fields§
§topic: Arc<str>Topic name (interned for efficiency)
partition: u32Partition ID
key: Option<BufferRef>Message key (optional, zero-copy reference)
value: BufferRefMessage value (zero-copy reference)
headers: Vec<(Arc<str>, BufferRef)>Message headers
timestamp: i64Timestamp (milliseconds since epoch)
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for ZeroCopyMessage
impl RefUnwindSafe for ZeroCopyMessage
impl Send for ZeroCopyMessage
impl Sync for ZeroCopyMessage
impl Unpin for ZeroCopyMessage
impl UnwindSafe for ZeroCopyMessage
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§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
Mutably borrows from an owned value. Read more
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