#string #interning #cache #hash

已删除 chisel-stringtable

简单的基于哈希的字符串缓存

7 个版本

0.1.6 2023年3月23日
0.1.5 2023年3月23日

#24#strings

MIT/Apache

1.5MB
72 代码行

Chisel - 字符串表

Rust

crates.io

概述

该软件包包含一个非常简单的字符串表,可用于通过将所有字符串存储在单个数据结构中来内部化字符串,然后在代码库的其他区域使用唯一的 u64 标识符来引用它们。

目前有一个基于内部B-树索引的内部化数据结构的实现。这里没有发生什么复杂的事情。

用法

这很简单

    use chisel_stringtable::btree_string_table::BTreeStringTable;
    use chisel_stringtable::common::StringTable;

    let mut table = BTreeStringTable::new();
    let key : u64 = table.add("some value to intern");
    assert_eq!(table.get(key).unwrap(), "some value to intern");
    assert_eq!(format!("Here's me embedded string: {}", table.get(key).unwrap()),
                        "Here's me embedded string: some value to intern")

无运行时依赖