文件名称:postgres-parser:Postgres的查询解析器,作为Rust板条箱!
文件大小:141KB
文件格式:ZIP
更新时间:2024-06-05 05:48:47
Rust
后解析器 这个项目是从Rust使用Postgres v13.0SQL Parser(有效地是gram.y和List *raw_parser(const char *str)函数)的开始。 这种工作方式是通过下载Postgres源代码,修补其一些Makefile(请参阅 ),将其编译为LLVM IR,对其进行优化/将其组装为LLVM位码,执行链接时优化(LTO)。 )生成仅包含正确使用Postgres的raw_parser()函数所需的符号/代码的静态库,最后,将其与Rust链接到该库。 这是通过自定义的脚本完成的,该脚本将到以执行所有艰苦的工作。 在该过程结束时,我们剩下一个libpostgres_parser.a档案, build.rs指示货物进行链接。 使用这个板条箱 使用此创建就像其他任何创建一样。 将其添加为对Cargo.toml的依赖Cargo.toml : [ depe
【文件预览】:
postgres-parser-master
----.gitignore(15B)
----patches()
--------makefiles-12.3.patch(2KB)
--------makefiles-13.0.patch(2KB)
----src()
--------parser.rs(10KB)
--------nodes.rs(380KB)
--------scanner.rs(13KB)
--------convert.rs(5KB)
--------sys.rs(667KB)
--------lib.rs(12KB)
----LICENSE.md(934B)
----Cargo.lock(11KB)
----includes.h(290B)
----Cargo.toml(795B)
----.github()
--------FUNDING.yml(744B)
--------workflows()
--------dependabot.yml(145B)
----examples()
--------scanner.rs(3KB)
--------dump.rs(1KB)
--------json.rs(2KB)
----README.md(5KB)
----tests()
--------scanner-tests.rs(5KB)
--------parser-tests.rs(996B)
----build.sh(5KB)
----build.rs(25KB)