Function h3o_zip::compress

source ·
pub fn compress<W: Write>(
    writer: &mut W,
    cells: impl IntoIterator<Item = CellIndex>
) -> Result<(), Error>
Expand description

Compress a sorted stream of cell indexes.

§Preconditions

The stream of cell indexes must be sorted and without duplicates.

§Errors

Returns io::Error if writes to the writer fails.

§Examples

use h3o::CellIndex;
use std::io::Cursor;

let cells = vec![
    0x8b184584a21efff,
    0x8b184584a246fff,
    0x8b184584a2a8fff,
    0x8b184584a2cbfff,
    0x8b184584a329fff,
    0x8b184584a366fff,
    0x8b184584a389fff,
].iter().copied().map(CellIndex::try_from).collect::<Result<Vec<_>, _>>()?;

let mut buffer = Cursor::new(vec![]);
h3o_zip::compress(&mut buffer, cells.clone()).expect("compress");

let bytes = buffer.into_inner();