1#![cfg_attr(not(any(feature = "std", test)), no_std)]
2#![doc(
3 html_logo_url = "https://raw.githubusercontent.com/z-galaxy/zlink/3660d731d7de8f60c8d82e122b3ece15617185e4/data/logo.png"
4)]
5#![deny(
6 missing_debug_implementations,
7 nonstandard_style,
8 rust_2018_idioms,
9 missing_docs
10)]
11#![warn(unreachable_pub, clippy::std_instead_of_core)]
12#![cfg_attr(not(doctest), doc = include_str!("../README.md"))]
13
14#[cfg(not(any(feature = "tracing", feature = "defmt")))]
15compile_error!("Either 'tracing' or 'defmt' feature must be enabled.");
16
17extern crate alloc;
18
19#[macro_use]
20#[doc(hidden)]
21pub mod log;
22
23mod json_ser;
24
25pub mod connection;
26pub use connection::Connection;
27mod error;
28pub use error::{Error, Result};
29#[cfg(feature = "server")]
30mod server;
31#[cfg(feature = "server")]
32pub use server::{
33 Server,
34 listener::{Listener, ReadyListener},
35 service::{self, Service},
36};
37mod call;
38#[cfg(feature = "server")]
39pub mod notified;
40pub use call::Call;
41pub mod reply;
42pub use reply::Reply;
43#[cfg(feature = "idl")]
44pub mod idl;
45#[cfg(feature = "introspection")]
46pub mod introspect;
47pub mod varlink_service;
48
49#[cfg(feature = "proxy")]
50pub use zlink_macros::proxy;
51
52#[cfg(feature = "service")]
53pub use zlink_macros::service;
54
55#[doc(hidden)]
57pub use futures_util;
58
59#[cfg(feature = "service")]
61#[doc(hidden)]
62pub use pin_project_lite;
63
64pub use zlink_macros::ReplyError;
65
66#[cfg(feature = "std")]
67#[doc(hidden)]
68pub mod unix_utils;
69
70#[doc(hidden)]
71pub mod test_utils;