fix: daletpack optimizing

This commit is contained in:
Artemy Egorov 2024-10-06 21:29:58 +03:00
parent dd597d278c
commit 573929beee
9 changed files with 166 additions and 375 deletions

View file

@ -1,10 +1,8 @@
use dalet::{
daletl::DlPage,
daletpack::*,
typed::{Hl, TNullArg, Tag::*},
};
use flate2::Compression;
use serde::{Deserialize, Serialize};
use std::io::Write;
#[macro_export]
@ -51,21 +49,6 @@ fn compress_zlib(data: &[u8]) -> std::io::Result<Vec<u8>> {
c.finish()
}
fn dlhn_serialize(page: &DlPage) -> Vec<u8> {
let mut output = Vec::new();
let mut serializer = dlhn::Serializer::new(&mut output);
page.serialize(&mut serializer).unwrap();
output
}
fn dlhn_deserialize(output: &Vec<u8>) -> DlPage {
let mut reader = output.as_slice();
let mut deserializer = dlhn::Deserializer::new(&mut reader);
DlPage::deserialize(&mut deserializer).unwrap()
}
fn main() {
let page = vec![
H("Heading 1".into(), Hl::One),
@ -117,7 +100,6 @@ fn main() {
bench!("Markdown", include_str!("./bench.md").as_bytes().to_vec());
bench!("Daletpack", encode_no_compress(&dalet_page).unwrap());
bench!("Dlhn", dlhn_serialize(&dalet_page));
bench!("Messagepack", rmp_serde::to_vec(&dalet_page).unwrap());
bench!("Bincode", bincode::serialize(&dalet_page).unwrap());
}