Expand description
§xlstream
Streaming Excel formula evaluation engine. Reads .xlsx files row-by-row,
evaluates formulas in bounded memory, writes results to a new .xlsx.
This crate re-exports the primary entry points from xlstream_eval
and xlstream_core. For direct access to internals, depend on those
crates instead.
§Examples
use std::path::Path;
let summary = xlstream::evaluate(
Path::new("input.xlsx"),
Path::new("output.xlsx"),
&xlstream::EvaluateOptions::default(),
)?;
assert!(summary.rows_processed > 0);Structs§
- Evaluate
Options - Options controlling formula evaluation behavior.
- Evaluate
Summary - Summary of a completed evaluation run.
- Excel
Date - Newtype wrapping an Excel date serial (days since the 1900 epoch, with the Lotus 1-2-3 leap-year bug preserved at serial 60).
Enums§
- Cell
Error - Excel cell-level errors. These are values, not exceptions: a cell can
hold
#DIV/0!just as it can hold a number, and formulas that consume it propagate the error rather than aborting the workbook. - Output
Mode - Controls what is written to formula cells in the output xlsx.
- Value
- A cell value. Every evaluated formula result, every loaded cell, and every function argument flows through this enum.
- XlStream
Error - Library-level errors. Cell-level errors (
#DIV/0!,#VALUE!, …) live oncrate::CellError; this type is for failures that stop evaluation rather than becoming a cell value.
Constants§
- ITERATIVE_
CALC_ DEFAULT_ MAX_ CHANGE - Default convergence threshold for iterative calculation (matches Excel).
- ITERATIVE_
CALC_ DEFAULT_ MAX_ ITERATIONS - Default maximum iterations for iterative calculation (matches Excel).
Functions§
- evaluate
- Evaluate every formula in
input, write results tooutput, and return anEvaluateSummary.