Expand description
The blocking API.
This module hosts all our blocking API. All the types under this module are thin wrappers
around the corresponding asynchronous types. Most of the method calls are simply calling their
asynchronous counterparts on the underlying types and use [async_io::block_on
] to turn them
into blocking calls.
§Caveats
Since methods provided by these types run their own little runtime (block_on
), you must not
use them in async contexts because of the infamous async sandwich footgun. This is
an especially important fact to keep in mind for crate::dbus_interface
. While
dbus_interface
allows non-async methods for convenience, these methods are called from an
async context. The blocking
crate provides an easy way around this problem though.
Re-exports§
pub use crate::ProxyDefault;
Modules§
- D-Bus standard interfaces.
Structs§
- A blocking wrapper of
zbus::Connection
. - A builder for
zbus::blocking::Connection
. - Wrapper over an interface, along with its corresponding
SignalContext
instance. A reference to the underlying interface may be obtained viaInterfaceRef::get
andInterfaceRef::get_mut
. - A blocking wrapper of
crate::MessageStream
. - A blocking wrapper of
crate::ObjectServer
. - An
std::iter::Iterator
implementation that yields owner change notifications. - A property changed event.
- An
std::iter::Iterator
implementation that yields property change notifications. - A blocking wrapper of
crate::Proxy
. - Builder for proxies.
- An
std::iter::Iterator
implementation that yields signal messages.