[package]
edition = "2024"
name = "formualizer-parse"
version = "4.1.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "High-performance Excel/OpenFormula tokenizer + parser with a stable AST surface"
homepage = "https://github.com/psu3d0/formualizer"
documentation = "https://docs.rs/formualizer"
readme = "README.md"
keywords = [
"spreadsheet",
"excel",
"formula",
"parser",
"tokenizer",
]
categories = [
"parser-implementations",
"text-processing",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/psu3d0/formualizer"
resolver = "2"
[features]
default = []
serde = [
"dep:serde",
"formualizer-common/serde",
]
[lib]
name = "formualizer_parse"
path = "src/lib.rs"
[[example]]
name = "parser_guard_bench"
path = "examples/parser_guard_bench.rs"
[[test]]
name = "array_rectangularity"
path = "tests/array_rectangularity.rs"
[[test]]
name = "deep_inputs"
path = "tests/deep_inputs.rs"
[[test]]
name = "external_admission"
path = "tests/external_admission.rs"
[[test]]
name = "operator_fingerprints"
path = "tests/operator_fingerprints.rs"
[[test]]
name = "operators"
path = "tests/operators.rs"
[[test]]
name = "parser_differential"
path = "tests/parser_differential.rs"
[[test]]
name = "pretty_union_context"
path = "tests/pretty_union_context.rs"
[[test]]
name = "reported_enum_matches"
path = "tests/reported_enum_matches.rs"
[[test]]
name = "resource_limits"
path = "tests/resource_limits.rs"
[[test]]
name = "tokenizer_best_effort_integration"
path = "tests/tokenizer_best_effort_integration.rs"
[[test]]
name = "tokenizer_equivalence"
path = "tests/tokenizer_equivalence.rs"
[dependencies.formualizer-common]
version = "4.1.0"
[dependencies.once_cell]
version = "1.21.3"
[dependencies.serde]
version = "1.0.228"
features = ["derive"]
optional = true
[dependencies.smallvec]
version = "1.13"
[lints.clippy]
allow_attributes = "deny"
allow_attributes_without_reason = "deny"
arithmetic_side_effects = "deny"
expect_used = "deny"
get_unwrap = "deny"
indexing_slicing = "deny"
panic = "deny"
string_slice = "deny"
todo = "deny"
unimplemented = "deny"
unreachable = "deny"
unwrap_in_result = "deny"
unwrap_used = "deny"