扩展库 / trie
trie
前缀字符串集合。
查找、插入、删除和前缀词数;UTF-8 按字节保存,不做隐式归一化。
当前 Windows/Linux 发布物的默认门禁均通过;历史 VFS 缺头和 AOT 缺符号不再是本包阻断。
API
2026-10-29 发布阻断 M2:合法模块级空树在 Windows/Linux 独立 EXE 打印 PASS 后报状态错误、退出 1;JIT 与相同局部对象对照正常。默认门禁加入共享生命周期专项,带超时/输入指纹并保留失败现场;旧局部对象通过不能代表整包退役可用。未改算法/API/ABI,不用提前清理或修改作用域掩盖。
| 接口 | 用途 |
|---|---|
trie.create() | 创建 Trie 对象;分配失败时抛错 |
insert / contains / remove | 管理精确键 |
startsWith / countPrefix | 查询前缀 |
count / clear | 总词数与清空 |
范例
import trie
trie.Trie words = trie.create()
words.insert("你好")
words.insert("你们")
println(words.countPrefix("你")) // 2
C 接口支持明确长度的二进制键;两个计数结果使用与 XLang int 一致的 int64_t。创建或插入遇到分配失败时,XLang 抛 MemoryError,已有键和计数保持。Windows/Linux 默认门禁覆盖 C 独立模型、包外原生访问拒绝、XLang 边界与分配故障、公开双语范例和独立 EXE;Linux C 另经 ASan/UBSan。C 单文件范例与 GCC、TCC、XLang 的固定输出一致。资源所有权、并发边界和性能范围见包内 README。