pub struct Frame {
pub version: u8,
pub frame_type: FrameType,
pub channel_id: u32,
pub seq: u64,
pub payload: Vec<u8>,
}Expand description
One multiplex frame.
Fields§
§version: u8§frame_type: FrameType§channel_id: u32§seq: u64For DATA: event sequence. For ACK/RESUME: the acknowledged / resume-after number.
payload: Vec<u8>Implementations§
Source§impl Frame
impl Frame
pub fn open(channel_id: u32, payload: &OpenPayload) -> Result<Self, FrameError>
pub fn data( channel_id: u32, seq: u64, payload: Vec<u8>, ) -> Result<Self, FrameError>
pub fn ack(seq: u64) -> Self
pub fn resume(after: u64) -> Self
pub fn window(channel_id: u32, credit: u32) -> Self
pub fn ping(nonce: u64) -> Self
pub fn pong(nonce: u64) -> Self
pub fn goaway(code: u32) -> Self
pub fn close(channel_id: u32) -> Self
Sourcepub fn decode(buf: &[u8]) -> Result<(Self, usize), FrameError>
pub fn decode(buf: &[u8]) -> Result<(Self, usize), FrameError>
Decode one frame from a complete buffer. Returns (frame, bytes_consumed).
pub fn parse_open(&self) -> Result<OpenPayload, FrameError>
Sourcepub fn journal_req(channel_id: u32, after: u64, limit: u32) -> Self
pub fn journal_req(channel_id: u32, after: u64, limit: u32) -> Self
Journal request: seq = after, payload = u32 limit (big-endian).
pub fn journal_req_limit(&self) -> Option<u32>
pub fn journal_reply( channel_id: u32, body: &JournalReplyBody, ) -> Result<Self, FrameError>
Trait Implementations§
impl Eq for Frame
impl StructuralPartialEq for Frame
Auto Trait Implementations§
impl Freeze for Frame
impl RefUnwindSafe for Frame
impl Send for Frame
impl Sync for Frame
impl Unpin for Frame
impl UnsafeUnpin for Frame
impl UnwindSafe for Frame
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