pub struct ChunkSize(/* private fields */);
Expand description
Tells a size to chunk its stream to the partner.
Implementations§
Trait Implementations§
Source§impl ChunkData for ChunkSize
impl ChunkData for ChunkSize
const CHANNEL: Channel = Channel::Network
const MESSAGE_TYPE: MessageType = MessageType::ChunkSize
Source§impl Decoder<ChunkSize> for ByteBuffer
impl Decoder<ChunkSize> for ByteBuffer
Source§fn decode(&mut self) -> IOResult<ChunkSize>
fn decode(&mut self) -> IOResult<ChunkSize>
Decodes bytes into a ChunkSize.
§Errors
When chunk data didn’t remain at least 4 bytes.
When its received chunk size’s most significant bit is 1. Chunking size is required that its bit is 0 in the specification. This is probably considered of programs which has no unsigned type.
§Examples
use sheave_core::{
ByteBuffer,
Decoder,
messages::ChunkSize
};
let mut buffer = ByteBuffer::default();
buffer.put_u32_be(128);
assert!(Decoder::<ChunkSize>::decode(&mut buffer).is_ok());
let mut buffer = ByteBuffer::default();
buffer.put_u32_be(0x80000000);
assert!(Decoder::<ChunkSize>::decode(&mut buffer).is_err());
let mut buffer = ByteBuffer::default();
assert!(Decoder::<ChunkSize>::decode(&mut buffer).is_err());
Source§impl Encoder<ChunkSize> for ByteBuffer
impl Encoder<ChunkSize> for ByteBuffer
impl Copy for ChunkSize
impl Eq for ChunkSize
impl StructuralPartialEq for ChunkSize
Auto Trait Implementations§
impl Freeze for ChunkSize
impl RefUnwindSafe for ChunkSize
impl Send for ChunkSize
impl Sync for ChunkSize
impl Unpin for ChunkSize
impl UnwindSafe for ChunkSize
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