arrow-js-ffi
arrow-js-ffi copied to clipboard
Add release callback
It's pretty astounding that this appears to work! Just the fact that it doesn't error is a good sign!
There's a lot of thought still in the memory management between Wasm and JS. We can't call the release callback if we're creating views, because the lifetime of the view might outlive the lifetime of the data. Even if we're copying data to JS, the user might want to do something with their wasm table after viewing it in JS.
So it might be best to keep the release functions standalone. That said, freeing the underlying array will not free the wasm-bindgen wrapper, and if we freed the wrapper after, that would lead to a double-free.
Closes #14
We also need to figure out some way to test that this is actually calling the release callback and that the referenced memory is actually deallocated.
You should be able to check that the release callback is now null https://arrow.apache.org/docs/format/CDataInterface.html#released-structure