#string-interning #interning #string #js #javascript #wasm

no-std boa_interner

Boa JavaScript 引擎的字符串 intern器

9 个版本 (5 个重大更新)

0.19.0 2024 年 7 月 11 日
0.18.0 2024 年 3 月 7 日
0.17.3 2023 年 9 月 26 日
0.17.0 2023 年 7 月 8 日
0.14.0 2022 年 3 月 15 日

#269数据结构

Download history • Rust 包仓库 5723/week @ 2024-04-21 • Rust 包仓库 5635/week @ 2024-04-28 • Rust 包仓库 5942/week @ 2024-05-05 • Rust 包仓库 5884/week @ 2024-05-12 • Rust 包仓库 4895/week @ 2024-05-19 • Rust 包仓库 4608/week @ 2024-05-26 • Rust 包仓库 4899/week @ 2024-06-02 • Rust 包仓库 5191/week @ 2024-06-09 • Rust 包仓库 5576/week @ 2024-06-16 • Rust 包仓库 6187/week @ 2024-06-23 • Rust 包仓库 5719/week @ 2024-06-30 • Rust 包仓库 6800/week @ 2024-07-07 • Rust 包仓库 8281/week @ 2024-07-14 • Rust 包仓库 6514/week @ 2024-07-21 • Rust 包仓库 6497/week @ 2024-07-28 • Rust 包仓库 7005/week @ 2024-08-04 • Rust 包仓库

28,917 每月下载次数
用于 24 个crate (3 个直接使用)

Unlicense OR MIT

160KB
3K SLoC

Boa 的 boa_interner 是一种用于编译器性能的字符串 intern器。

组件概述

使用字符串 intern器的想法是,在大多数代码中,如标识符和字面量等字符串往往会被重复。这会在比较和存储时造成额外的负担。字符串 intern器为每个字符串存储一个唯一的 usize 符号,确保没有重复。这使得比较变得更容易,因为它只需要比较 usize,而且也更容易存储,因为不需要堆分配的字符串,只需存储一个 usize。这减少了内存消耗并提高了编译器的性能。

依赖项

~2.2–3MB
~53K SLoC