7 个版本 (1 个稳定版)

1.0.0 2021 年 6 月 16 日
0.1.5 2021 年 6 月 12 日

#1903数据库接口

每月 23 次下载

Apache-2.0

115KB
2.5K SLoC

Memgraph Mage Rust 查询模块

rsmgp-sys 代表 Rust Memgraph 程序 "系统" 库,用于在 Rust 中开发 Memgraph 查询模块。

添加新的 Rust Memgraph 查询模块很简单,只需将以下内容添加到您的 Cargo.toml 项目文件中。

[dependencies]
c_str_macro = "1.0.2"
rsmgp-sys = "^0.1.0"

[lib]
name = "query_module_name"
crate-type = ["cdylib"]

用法和实现细节

在模块/过程代码中,建议使用 EdgeListMapMemgraphPathPropertyValueVertex 结构。以 Mgp 前缀的结构用于在过程代码和 Memgraph 之间建立桥梁。应以 Mgp 前缀的结构返回数据到 Memgraph / 客户端。以 mgp_ 前缀的底层指针被暴露,但不应在过程调用中直接操作。这个库的整个目的是尽可能隐藏这种复杂性。

Memgraph Rust 查询模块 API 使用 CStr (&CStr),因为这是 Rust 和 Memgraph 引擎之间最兼容的类型。Rust String 可以在字符串中间包含空字节(0 是有效的 Unicode 代码点)。这意味着并非所有 Rust 字符串都可以实际转换为 C 字符串。在与 rsmgp API 交互时,应使用内置的 CStrc_str 库,因为 Memgraph 查询模块 API 只提供 C 字符串。

依赖项

~1.2–3.5MB
~70K SLoC