streams
Показания датчика как stream<i32>: генератор с yield, конвейер из операторов std.stream, соединённых пайпом |>
(x |> f(a) — это f(x, a), §10.3).
oxl run examples/streams
oxl test examples/streams| Функция | Конвейер |
|---|---|
scaled(floor) | readings() |> dedup() |> filter(…) |> map(…) |
running() | readings() |> scan(0, (acc, x) => acc + x) |
groups(n) | readings() |> batch(n, 1s): группы по размеру или по времени |
Поток ленив: ничего не читается, пока его не потребляет for await. Остальные операторы — merge, zip, window, throttle,
debounce — в std.stream.