Encoder and decoder for HTTP chunked transfer coding. For more information about chunked transfer encoding:
use chunked_transfer::Decoder; use std::io::Read; let encoded = b"3\r\nhel\r\nb\r\nlo world!!!\r\n0\r\n\r\n"; let mut decoded = String::new(); let mut decoder = Decoder::new(encoded as &[u8]); decoder.read_to_string(&mut decoded); assert_eq!(decoded, "hello world!!!");
use chunked_transfer::Encoder; use std::io::Write; let mut decoded = "hello world"; let mut encoded: Vec<u8> = vec![]; { let mut encoder = Encoder::with_chunks_size(&mut encoded, 5); encoder.write_all(decoded.as_bytes()); } assert_eq!(encoded, b"5\r\nhello\r\n5\r\n worl\r\n1\r\nd\r\n0\r\n\r\n");