dbus-crossroads

Crates.iodbus-crossroads
lib.rsdbus-crossroads
version0.5.2
sourcesrc
created_at2020-06-19 10:09:18.451335
updated_at2023-01-06 19:57:33.034992
descriptionFramework for writing D-Bus method handlers
homepage
repositoryhttps://github.com/diwic/dbus-rs/
max_upload_size
id255637
size195,640
(diwic)

documentation

http://docs.rs/dbus-crossroads

README

crates.io API documentation license

dbus-crossroads is a library that helps you implement interfaces on object paths, i e "server side" method handler code.

It is not as mature as dbus::tree yet, but the API should be fairly stable and easier to use than dbus::tree. Go ahead and use it, and report any issues you find!

To get started, you can jump into the commented examples, one for sync one for async (dbus-tokio), and one slightly more advanced, or familiarize yourself using the API reference.

Design decisions (compared to dbus::tree):

  • First class support for both sync and async methods
  • Detect method arguments automatically through generics
  • ...but less generics in structs you use, which means less cluttered API
  • The tree/crossroads instance is Send (but not Sync).
  • You can now modify the instance from within a method handler
  • It is objects (paths) that can contain custom data, and they can contain different data for different objects
  • Interface descriptions are kept in a registry, which means less reference counting
Commit count: 1106

cargo fmt