nexus_stats_core/lib.rs
1#![cfg_attr(not(feature = "std"), no_std)]
2#![warn(missing_docs)]
3
4//! Core types shared across the nexus-stats ecosystem.
5//!
6//! This crate provides the fundamental streaming statistics types used by
7//! `nexus-stats` and all its subcrates. Not intended for direct use —
8//! import from `nexus-stats` instead.
9//!
10//! Includes: error types, math utilities, core smoothing (EMA, AsymEma, Slew),
11//! statistics (Welford, Moments, EwmaVar, Covariance, HarmonicMean, Percentile),
12//! monitoring, core detection (CUSUM), and core control types.
13
14#[cfg(feature = "alloc")]
15extern crate alloc;
16
17mod enums;
18#[macro_use]
19#[doc(hidden)]
20pub mod math;
21mod feature_vector;
22
23/// Clock trait and implementations.
24pub mod clock;
25
26pub use enums::{Condition, ConfigError, DataError, Direction};
27
28/// Control, thresholding, and differencing.
29pub mod control;
30/// Change detection.
31pub mod detection;
32/// Monitoring and health tracking.
33pub mod monitoring;
34/// Online feature normalization.
35pub mod normalization;
36/// Smoothing and filtering primitives.
37pub mod smoothing;
38/// Core streaming statistics.
39pub mod statistics;