Add loaned message support in R2R's subscriber to
take advantage of the shared memory backend of the middleware.
- Add new constructor to `WrappedNativeMsg` which
takes a already allocated pointer, and a deallocator.
- If the subscription can loan messages, construct
`WrappedNativeMsg` with the loaned message pointer.
- Pass in also a closure as the deallocator that calls
the right APIs to return the loaned message to the middleware layer.
- The deallocator is called in the destructor of `WrappedNativeMsg`
- Add borrow_loaned_message API to publisher
- Add release() api to WrappedNativeMsg so a loaded message
could be manually released if not published.
Rust 1.66 (or rather, the clippy bundled with it) adds a new clippy check called `clippy::explicit-auto-deref`. This commit fixes an instance of it in nodes.rs
- Add "save-bindgen" feature to store generated bindings in source directory.
- Add "doc-only" to disable bindgen and linking, and use saved bindings
in source directory instead.
- Bindings are cached to speed on bindgen process.
- Add "save-bindgen" feature to store generated bindings in source directory.
- Add "doc-only" to disable bindgen and linking, and use saved bindings
in source directory.
- Generated bindings are cached to speed up bindgen process.
- Add "save-bindgen" feature to store generated bindings in source directory.
- Add "doc-only" feature to disable bindgen and linking, and use saved
bindings in source directory instead.
- Add "save-bindgen" to save generated bindings file to source
directory.
- Cache generated bindings file to speed up bindgen process.
- Add "docs-only" feature to disable linking and bindgen on docs.rs.