10月29, 2020

Neon支持在Node App中嵌入Rust代码

Neon是一个可以使用Rust开发原生Node模块的库和工具链,类似于使用C和C++所实现的功能,它还利用了Rust安全方面的好处。

Neon致力于让Node.js模块的创建变得简单明了。在安装了Neon和Rust工具链后,你就可以使用neon new 来创建一个Node模块骨架,其中包含了一个Cargo.toml文件和一个Rust文件(一个示例hello函数):

<project-name>/
├── .git ignore
├── README.md
├── lib/
│   └── index.js
├── native/
│   ├── Cargo.toml
│   └── src/
│       └── lib.rs
└── package.json

你可以在Cargo.toml中添加所需的Rust依赖项,并按照你喜欢的方式布局代码。你可以通过两个步骤导出Rust函数,然后在Node程序中使用它。首先是注册函数:

register_module!(mut m, {
    m.export_function("myFunction", thread_count)
});

然后,在lib/index.js中导出:

const addon = require('../native');
module.exports = addon.myFunction;

准备好代码后,你就可以构建Node模块:

点击查看原文>

本文链接:https://blog.jnliok.com/post/B0oT5hH2kNvBX4rg8PZe.html

-- EOF --

Comments