3个不稳定版本

0.2.1 2022年10月29日
0.2.0 2022年10月20日
0.1.0 2021年1月23日

#129压缩

Download history 459/week @ 2024-04-23 437/week @ 2024-04-30 552/week @ 2024-05-07 396/week @ 2024-05-14 357/week @ 2024-05-21 307/week @ 2024-05-28 564/week @ 2024-06-04 514/week @ 2024-06-11 665/week @ 2024-06-18 613/week @ 2024-06-25 542/week @ 2024-07-02 611/week @ 2024-07-09 616/week @ 2024-07-16 563/week @ 2024-07-23 885/week @ 2024-07-30 553/week @ 2024-08-06

2,693 每月下载量
6 crate 中使用 (5 个直接使用)

MIT/Apache

29KB
479

lz-str-rs

crates.io Documentation MIT/Apache-2 licensed Rust

lz-string的Rust端口。

安装

将以下内容添加到您的 Cargo.toml 文件中

[dependencies]
lz-str = "0.1.0"

入门指南

// The demonstrated functions correspond with `LZString.compress` and `LZString.decompress` from the JS version.
fn main() {
    let data = "The quick brown fox jumps over the lazy dog";

    // Compress the data. This cannot fail.
    let compressed_data = lz_str::compress(data);

    // Decompress the data.
    // This may return `Option::None` if it fails.
    // Make sure to do error-checking in a real application to prevent crashes!
    let decompressed_data =
        lz_str::decompress(compressed_data).expect("`compressed_data` is invalid");

    // The decompressed_data should be the same as data, except encoded as UTF16.
    // We undo that here.
    // In a real application,
    // you will want to do error checking to prevent users from causing crashes with invalid data.
    let decompressed_data =
        String::from_utf16(&decompressed_data).expect("`decompressed_data` is not valid UTF16");

    assert!(data == decompressed_data);
}

查看 示例 目录以获取更多示例。

功能

rustc-hash: 此功能将一些内部映射的哈希器替换为 rustc-hash,以提升性能,但不再使用具有DOS抵抗性的哈希器。

测试

cargo test

基准测试

cargo bench

绑定

WebAssembly

作者

adumbidiot (Nathaniel Daniel)

许可

根据您的选择,许可为以下之一

贡献

除非您明确说明,否则您有意提交以包含在作品中的任何贡献,根据Apache-2.0许可定义,应如上所述双重许可,无需任何附加条款或条件。

依赖项