[package]
edition = "2021"
name = "lemma-engine"
version = "0.7.2"
authors = ["benrogmans <ben@amrai.nl>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A language that means business."
homepage = "https://github.com/benrogmans/lemma"
documentation = "https://docs.rs/lemma-engine"
readme = "README.md"
keywords = [
"logic",
"rules",
"declarative",
"dsl",
"rust",
]
categories = [
"parser-implementations",
"development-tools",
]
license = "Apache-2.0"
repository = "https://github.com/benrogmans/lemma"
resolver = "3"
[lib]
name = "lemma"
crate-type = [
"cdylib",
"rlib",
]
path = "src/lib.rs"
[[test]]
name = "bdd_consensus"
path = "tests/bdd_consensus.rs"
[[test]]
name = "bdd_partial_simplification"
path = "tests/bdd_partial_simplification.rs"
[[test]]
name = "bdd_simplification"
path = "tests/bdd_simplification.rs"
[[test]]
name = "coffee_order"
path = "tests/coffee_order.rs"
[[test]]
name = "cross_document_references"
path = "tests/cross_document_references.rs"
[[test]]
name = "datetime_edge_cases"
path = "tests/datetime_edge_cases.rs"
[[test]]
name = "documentation_examples"
path = "tests/documentation_examples.rs"
[[test]]
name = "end_to_end"
path = "tests/end_to_end.rs"
[[test]]
name = "equal_operator"
path = "tests/equal_operator.rs"
[[test]]
name = "error_messages"
path = "tests/error_messages.rs"
[[test]]
name = "expression_syntax"
path = "tests/expression_syntax.rs"
[[test]]
name = "fact_override_type_validation"
path = "tests/fact_override_type_validation.rs"
[[test]]
name = "inline_type_imports"
path = "tests/inline_type_imports.rs"
[[test]]
name = "integration_comprehensive"
path = "tests/integration_comprehensive.rs"
[[test]]
name = "integration_examples"
path = "tests/integration_examples.rs"
[[test]]
name = "inversion"
path = "tests/inversion.rs"
[[test]]
name = "inversion_comparison_operators"
path = "tests/inversion_comparison_operators.rs"
[[test]]
name = "inversion_constraint_linear"
path = "tests/inversion_constraint_linear.rs"
[[test]]
name = "inversion_display_serialize"
path = "tests/inversion_display_serialize.rs"
[[test]]
name = "inversion_enhancements"
path = "tests/inversion_enhancements.rs"
[[test]]
name = "inversion_error_messages"
path = "tests/inversion_error_messages.rs"
[[test]]
name = "inversion_guards"
path = "tests/inversion_guards.rs"
[[test]]
name = "inversion_math_ops"
path = "tests/inversion_math_ops.rs"
[[test]]
name = "inversion_missing_cases"
path = "tests/inversion_missing_cases.rs"
[[test]]
name = "inversion_recursive_expansion"
path = "tests/inversion_recursive_expansion.rs"
[[test]]
name = "math_ops"
path = "tests/math_ops.rs"
[[test]]
name = "missing_fact_propagation"
path = "tests/missing_fact_propagation.rs"
[[test]]
name = "modulo_power"
path = "tests/modulo_power.rs"
[[test]]
name = "nested_document_references"
path = "tests/nested_document_references.rs"
[[test]]
name = "proof_e2e"
path = "tests/proof_e2e.rs"
[[test]]
name = "property_based"
path = "tests/property_based.rs"
[[test]]
name = "required_fact_names_nested_doc"
path = "tests/required_fact_names_nested_doc.rs"
[[test]]
name = "resource_limits_test"
path = "tests/resource_limits_test.rs"
[[test]]
name = "scale_number_refactoring"
path = "tests/scale_number_refactoring.rs"
[[test]]
name = "scale_unit_conversion"
path = "tests/scale_unit_conversion.rs"
[[test]]
name = "semantic_validation"
path = "tests/semantic_validation.rs"
[[test]]
name = "test_discount_inversion"
path = "tests/test_discount_inversion.rs"
[[test]]
name = "timezone"
path = "tests/timezone.rs"
[[test]]
name = "type_aware_arithmetic"
path = "tests/type_aware_arithmetic.rs"
[[test]]
name = "type_definitions"
path = "tests/type_definitions.rs"
[[test]]
name = "type_propagation"
path = "tests/type_propagation.rs"
[[test]]
name = "typed_values"
path = "tests/typed_values.rs"
[[test]]
name = "unit_percentage_operations"
path = "tests/unit_percentage_operations.rs"
[[test]]
name = "validator_type_checking"
path = "tests/validator_type_checking.rs"
[[test]]
name = "veto"
path = "tests/veto.rs"
[[test]]
name = "veto_inversion"
path = "tests/veto_inversion.rs"
[[test]]
name = "wasm_build"
path = "tests/wasm_build.rs"
[dependencies.boolean_expression]
version = "0.4"
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.indexmap]
version = "2.0"
features = ["serde"]
[dependencies.pest]
version = "2.7"
[dependencies.pest_derive]
version = "2.7"
[dependencies.regex]
version = "1.0"
[dependencies.rust_decimal]
version = "1.33"
features = ["serde"]
[dependencies.serde]
version = "1.0"
features = [
"derive",
"rc",
]
[dependencies.serde_json]
version = "1.0"
[dependencies.strum]
version = "0.26"
[dependencies.strum_macros]
version = "0.26"
[dev-dependencies.insta]
version = "1.34"
[dev-dependencies.proptest]
version = "1.4"
[target.'cfg(target_arch = "wasm32")'.dependencies.console_error_panic_hook]
version = "0.1"
[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen]
version = "0.2.104"