streamweave_transformers/
lib.rs

1//! Transformers for StreamWeave
2//!
3//! This package provides a collection of transformers for use in StreamWeave pipelines and graphs.
4
5// Declare all transformer modules
6// Note: Directory names use hyphens, but Rust modules use underscores
7#[path = "batch/mod.rs"]
8pub mod batch;
9#[path = "circuit-breaker/mod.rs"]
10pub mod circuit_breaker;
11#[path = "filter/mod.rs"]
12pub mod filter;
13#[path = "group-by/mod.rs"]
14pub mod group_by;
15#[path = "interleave/mod.rs"]
16pub mod interleave;
17#[path = "limit/mod.rs"]
18pub mod limit;
19#[path = "map/mod.rs"]
20pub mod map;
21#[path = "merge/mod.rs"]
22pub mod merge;
23#[path = "message-dedupe/mod.rs"]
24pub mod message_dedupe;
25#[cfg(feature = "ml")]
26#[path = "ml/mod.rs"]
27pub mod ml;
28#[path = "moving-average/mod.rs"]
29pub mod moving_average;
30#[path = "ordered-merge/mod.rs"]
31pub mod ordered_merge;
32#[path = "partition/mod.rs"]
33pub mod partition;
34#[path = "rate-limit/mod.rs"]
35pub mod rate_limit;
36#[path = "reduce/mod.rs"]
37pub mod reduce;
38#[path = "retry/mod.rs"]
39pub mod retry;
40#[path = "round-robin/mod.rs"]
41pub mod round_robin;
42#[path = "router/mod.rs"]
43pub mod router;
44#[path = "running-sum/mod.rs"]
45pub mod running_sum;
46#[path = "sample/mod.rs"]
47pub mod sample;
48#[path = "skip/mod.rs"]
49pub mod skip;
50#[path = "sort/mod.rs"]
51pub mod sort;
52#[path = "split/mod.rs"]
53pub mod split;
54#[path = "split-at/mod.rs"]
55pub mod split_at;
56#[path = "take/mod.rs"]
57pub mod take;
58#[path = "timeout/mod.rs"]
59pub mod timeout;
60#[path = "zip/mod.rs"]
61pub mod zip;
62
63// Note: We don't glob re-export to avoid naming conflicts (many transformers export
64// modules named `input`, `output`, `transformer`, etc.). Access transformers via
65// their module paths, e.g.:
66//   use streamweave_transformers::map::MapTransformer;
67//   use streamweave_transformers::running_sum::RunningSumTransformer;