Skip to main content

wowlab_analytics/
lib.rs

1//! Telemetry decoding, aggregation, and chart-ready view models for `WoW` Lab.
2//!
3//! # Example
4//!
5//! ```
6//! use wowlab_analytics::new_running_state;
7//!
8//! let state = new_running_state(4);
9//! assert_eq!(state.chunks_total, 4);
10//! assert_eq!(state.chunks_completed, 0);
11//! ```
12
13#![expect(
14    clippy::redundant_feature_names,
15    reason = "the cross-crate test-support capability name is mandated by the shared fixture contract"
16)]
17
18mod analytics;
19
20#[cfg(any(test, feature = "test-support"))]
21pub use analytics::test_support;
22pub use analytics::{
23    ActionView, AnalyticsDecodeError, AnalyticsDecodeStage, AnalyticsView, AuraView,
24    AuraWindowView, CooldownView, CooldownWindowView, CoreView, DamageByTargetView,
25    DamageProfileView, DictionaryMap, DistributionView, EncounterEventView, ExecutionView,
26    HistogramView, JobResultView, MarkerView, MergeError, PercentilesView, PermutationSummaryView,
27    PhaseMarkerView, ResourceView, SlotDiffView, SlotItemEntryView, SlotRankingView,
28    TargetMapEntry, TimelineView, TournamentStatsView, TournamentView, UnitMapEntry,
29    decode_and_derive, decode_chunk_telemetry, decode_job_result, emit_result_snapshot,
30    emit_timeline_snapshot, merge_chunk, new_running_state, validate_chunk,
31};