3 个版本
新 0.0.3 | 2024 年 8 月 22 日 |
---|---|
0.0.2 | 2024 年 4 月 18 日 |
0.0.1 | 2024 年 4 月 5 日 |
2578 在 解析器实现 中
每月 567 次下载
在 vectorscan-rs 中使用
2MB
795 行
vectorscan-rs-sys
概述
此包实现了对 Vectorscan 分支的 Rust 最小绑定,Vectorscan 是 Hyperscan 的高性能正则表达式引擎。此包从源代码构建 Vectorscan 的供应商副本。
依赖项
已在 x86_64 Linux、x86_64 macOS 和 aarch64 macOS 上进行了测试。
实现说明
此包最初是作为 Nosey Parker 的一部分编写的。它从 pyperscan 项目改编而来,该项目使用 Rust 将 Hyperscan 暴露给 Python。(该项目以 Apache 2.0 或 MIT 许可证发布。)
目前公开的绑定仅限于 Vectorscan 的基于块的匹配 API。其他各种 API(如基于流和向量的匹配)尚未公开。其他功能,如 Chimera PCRE 库、测试代码、基准代码和支持工具已禁用。
Vectorscan 5.4.11 的源代码包含在 5.4.11.tar.gz
文件中。
在构建时,对 Vectorscan 源代码应用了一个 补丁。此补丁做了几件事
- 修改基于 CMake 的构建系统,以消除对
ragel
的构建时依赖 - 将 4 个预编译的 Ragel
.rl
文件添加到源代码树中 - 修改基于 CMake 的构建系统,允许禁用此包中未使用的几个组件
许可证
本项目采用以下任一许可证授权:
供您选择。
本项目包含一个由第三方提供的 Vectorscan 复制,该软件采用3条款BSD许可证发布(《LICENSE-VECTORSCAN》)。
贡献
除非您明确说明,否则根据Apache-2.0许可证定义,您提交给 vectorscan-rs-sys
的任何有意贡献将如上双许可,不附加任何额外条款或条件。