Skip to main content

waterkit_core/
lib.rs

1//! # waterkit-core
2//!
3//! Shared primitives for the [waterkit](https://github.com/water-rs/waterkit)
4//! utility kit. See `README.md` for the full design rationale.
5//!
6//! Re-exports the most-used items so capability crates can write
7//! `use waterkit_core::{Subscribed, Brightness, Permission, Timestamp};`
8//! without fishing through submodules.
9
10#![warn(missing_docs)]
11#![warn(missing_debug_implementations)]
12#![forbid(unsafe_code)]
13
14pub mod capability;
15pub mod error;
16pub mod id;
17pub mod permission;
18pub mod subscribed;
19pub mod time;
20pub mod units;
21
22pub use capability::Capabilities;
23pub use error::CoreError;
24pub use id::Uuid;
25pub use permission::{HealthDataKind, Permission, PermissionError, PermissionStatus};
26pub use subscribed::{Subscribed, SubscribedSink, subscribed, subscribed_with_executor};
27pub use time::{Duration, Timestamp};
28pub use units::{
29    Brightness, Latitude, Longitude, OutOfRange, Pan, Pitch, PlaybackRate, RefreshRate, Volume,
30    Zoom,
31};