u_os_hub_client/lib.rs
1// SPDX-FileCopyrightText: 2025 Weidmueller Interface GmbH & Co. KG <oss@weidmueller.com>
2//
3// SPDX-License-Identifier: MIT
4
5//! Welcome to the u-OS Data Hub client library.
6//!
7//! This library allows to interact with the u-OS Variable Data Hub as a provider or consumer.
8//!
9//! As a starting point, please take a look at the [provider] and [consumer] module documentation.
10//! They provide example code and a detailed description of the available APIs.
11//!
12//! # Features
13//!
14//! * `export-low-level-api` - Exports low level features as public API. See [consumer] module documentation for details about the low level api. (Default: `false`)
15
16// Contains the generated flatbuffers.
17// The module comment/description is located here to not change the generated files.
18// Because of the same reason the "dead_code", "unused_imports" and "clippy::all" is allowed for the generated module.
19#[cfg(not(feature = "export-low-level-api"))]
20#[allow(warnings, dead_code, unused_imports, clippy::all, clippy::unwrap_used, clippy::expect_used)]
21#[rustfmt::skip]
22mod generated;
23#[cfg(feature = "export-low-level-api")]
24#[allow(warnings, dead_code, unused_imports, clippy::all, clippy::unwrap_used, clippy::expect_used)]
25#[rustfmt::skip]
26pub mod generated;
27
28// Note: We force documentation for public items for some select modules.
29#[warn(missing_docs)]
30pub mod authenticated_nats_con;
31#[warn(missing_docs)]
32pub mod consumer;
33#[warn(missing_docs)]
34pub mod dh_types;
35pub mod env_file_parser;
36pub mod nats_subjects;
37pub mod oauth2;
38pub mod payload_builders;
39#[warn(missing_docs)]
40pub mod provider;
41#[warn(missing_docs)]
42pub mod variable;
43pub mod variable_definition_serde_extension;
44pub mod variable_value_type_serde_extension;