10 unstable releases (4 breaking)
0.5.1 | Aug 28, 2021 |
---|---|
0.5.0 | May 25, 2021 |
0.4.2 | May 20, 2021 |
0.3.2 | Oct 19, 2018 |
0.1.0 | Mar 17, 2018 |
#3 in #lets
16KB
88 lines
🕊️ Palombe
Palombe lets you send and receive key/value messages synchronously through different processes using named pipes.
Quick example
extern create palombe;
fn main() {
std::thread::spawn(|| send("foo", "bar"));
assert_eq!(receive("foo"), "bar");
}
Acknowledgments
⚠️ This tool is not suited for building software, it is intended to be used only in rapid prototyping and first product development steps!
C-bindings that expose Palombe have no UTF8 support (because it uses
CString
that are FFI-Safe), so base64
could be a good encoding for
sharing complex datatypes ...
If you looking for a better / faster / safer way to share typed (yes you want that) data across different processes, take a look at GoogleProtocal Buffer or even better at Cap’n Proto (which is infinitely faster).
Supported environments
The tool is embed into modules targeting several environments:
- ECMAScript: npm | Yarn (Sources)
- Python: PyPI (Sources)
- Ruby: RubyGem.org (Sources)
- Rust: Crates.io (Sources)
Contributing
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting a pull requests to us.
Authors
See also the list of contributors who participated in this project.
License
This project is licensed under the 3rd version of the GPL License - see the LICENSE