Skip to main content

compression_encode_buffer

Function compression_encode_buffer 

Source
pub fn compression_encode_buffer(
    dst: &mut [u8],
    src: &[u8],
    algorithm: Algorithm,
) -> Result<usize>
Expand description

Wraps compression_encode_buffer.

Examples found in repository?
examples/02_compression_encode_one_shot.rs (line 9)
6fn main() -> Result<(), Box<dyn std::error::Error>> {
7    let input = pseudo_random_bytes(8 * 1024);
8    let mut output = vec![0_u8; input.len() * 2];
9    let written = compression_encode_buffer(&mut output, &input, Algorithm::Lz4Raw)?;
10    assert!(written > 0);
11    let scratch_size = compression_encode_scratch_buffer_size(Algorithm::Lz4Raw);
12    println!("scratch={scratch_size} bytes written={written}");
13    println!("✅ one-shot compression encode OK");
14    Ok(())
15}
More examples
Hide additional examples
examples/03_compression_decode_one_shot.rs (line 9)
6fn main() -> Result<(), Box<dyn std::error::Error>> {
7    let input = pseudo_random_bytes(8 * 1024);
8    let mut encoded = vec![0_u8; input.len() * 2];
9    let encoded_len = compression_encode_buffer(&mut encoded, &input, Algorithm::Lz4Raw)?;
10
11    let mut decoded = vec![0_u8; input.len()];
12    let decoded_len =
13        compression_decode_buffer(&mut decoded, &encoded[..encoded_len], Algorithm::Lz4Raw)?;
14
15    assert_eq!(decoded_len, input.len());
16    assert_eq!(&decoded[..decoded_len], input.as_slice());
17    println!("decoded={decoded_len} bytes");
18    println!("✅ one-shot compression decode OK");
19    Ok(())
20}