16 unstable releases (4 breaking)

0.6.5 Jan 30, 2023
0.6.0 Sep 23, 2022
0.4.7 May 13, 2022
0.4.4 Mar 23, 2022
0.1.1 Oct 4, 2020

#447 in Encoding


Used in 3 crates

Custom license

145KB
3.5K SLoC

cyclonedds-rs

Rust bindings for cyclonedds https://github.com/eclipse-cyclonedds/cyclonedds. This create no longer depends on a code generator. The Cyclone serialization interface is used to implement the Rust interface. You can annotate a structure with the new derive macro and start subscribing and publishing right from Rust.

Introduction

This crate allows you to use the cyclonedds library using safe Rust. It uses the cyclone serialization/deserialization interface for high performance and IDL free usage.

Features

  1. Qos
  2. Reader and Writer
  3. Listener with closure callbacks
  4. Async reader
  5. multiple and nested keys

Roadmap Features

  1. Shared memory support using iceoryx

Examples

  1. https://github.com/sjames/demo-vehicle-speed-subscriber (Vehicle speed subscriber with async reader)
  2. https://github.com/sjames/demo-vehicle-speed-publisher (Vehicle speed publisher)

lib.rs:

Safe Rust bindings to cyclonedds

Dependencies

~0.9–3.5MB
~79K SLoC