Skip to main content

ironcalc_base/
lib.rs

1//! # IronCalcBase engine API
2//!
3//! This is the documentation for the base engine API.
4//!
5//! # Basic usage
6//!
7//! Add the dependency in Cargo.toml:
8//!
9//! ```toml
10//! [dependencies]
11//! ironcalc_base = { git = "https://github.com/ironcalc/IronCalc" }
12//! ```
13//!
14//! <small> until version 1.0.0 you should use the git dependencies as stated </small>
15//!
16//! In this example we use the excel function `CONCAT` to concatenate strings in cells `A1` and `B1`:
17//!
18//! ```rust
19#![doc = include_str!("../examples/hello_world.rs")]
20//! ```
21//!
22//! In this example, we demonstrate our ability to handle formulas and errors:
23//!
24//! ```rust
25#![doc = include_str!("../examples/formulas_and_errors.rs")]
26//! ```
27
28#![warn(clippy::print_stdout)]
29
30pub mod builtin_styles;
31pub mod calc_result;
32pub mod cell;
33pub mod cf_types;
34pub mod colors;
35pub mod expressions;
36pub mod formatter;
37pub mod language;
38pub mod locale;
39pub mod new_empty;
40pub mod number_format;
41pub mod themes;
42pub mod types;
43pub mod worksheet;
44
45pub use crate::constants::COLUMN_WIDTH_FACTOR;
46pub use crate::constants::ROW_HEIGHT_FACTOR;
47
48mod actions;
49mod arithmetic;
50mod cast;
51mod conditional_formatting;
52mod constants;
53mod cut_paste;
54mod functions;
55mod implicit_intersection;
56mod model;
57mod styles;
58mod tz;
59mod units;
60mod user_model;
61mod utils;
62mod workbook;
63
64#[cfg(test)]
65mod test;
66
67#[cfg(any(test, feature = "mock_time"))]
68pub mod mock_time;
69
70pub use locale::get_supported_locales;
71pub use model::get_milliseconds_since_epoch;
72pub use model::FmtSettings;
73pub use model::Model;
74pub use user_model::BorderArea;
75pub use user_model::ClipboardData;
76pub use user_model::UserModel;
77pub use utils::get_all_timezones;