TypedArray
TypedArray
describes an array-like view of an underlying binary data buffer (opens in a new tab). Using TypedArray
allows you to share data between Node.js and Rust without copy or move data underlying.
Buffer
Buffer
(opens in a new tab) is a subclass of JavaScript's Uint8Array
(opens in a new tab). It is often used to share data between Node.js and Rust.
Buffer
could be created with Vec<u8>
, if you created Buffer
in this way, the ownership of the Vec<8>
will be transferred into the v8
, and the Vec<u8>
will be dropped when v8
GC the Buffer
.
lib.rs
use napi::bindgen_prelude::*;
use napi_derive::napi;
#[napi]
pub fn create_buffer() -> Buffer {
vec![0, 1, 2].into()
}
💡
The underlying Vec<u8>
will not be moved or copied in this way.