lemma-engine 0.8.1

A language that means business.
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
name = "lemma-engine"
version = "0.8.1"
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"

[features]
default = ["registry"]
registry = ["reqwest"]

[lib]
name = "lemma"
crate-type = [
    "cdylib",
    "rlib",
]
path = "src/lib.rs"

[[test]]
name = "arithmetic_type_combinations"
path = "tests/arithmetic_type_combinations.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_spec_references"
path = "tests/cross_spec_references.rs"

[[test]]
name = "datetime_edge_cases"
path = "tests/datetime_edge_cases.rs"

[[test]]
name = "datetime_edge_hunting"
path = "tests/datetime_edge_hunting.rs"

[[test]]
name = "datetime_sugar"
path = "tests/datetime_sugar.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_binding_type_validation"
path = "tests/fact_binding_type_validation.rs"

[[test]]
name = "formatter"
path = "tests/formatter.rs"

[[test]]
name = "fuzz_api_surface"
path = "tests/fuzz_api_surface.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 = "meta_fields"
path = "tests/meta_fields.rs"

[[test]]
name = "missing_fact_propagation"
path = "tests/missing_fact_propagation.rs"

[[test]]
name = "modulo_power"
path = "tests/modulo_power.rs"

[[test]]
name = "nested_spec_references"
path = "tests/nested_spec_references.rs"

[[test]]
name = "proof_e2e"
path = "tests/proof_e2e.rs"

[[test]]
name = "property_based"
path = "tests/property_based.rs"

[[test]]
name = "ratio_scale_units"
path = "tests/ratio_scale_units.rs"

[[test]]
name = "required_fact_names_nested_spec"
path = "tests/required_fact_names_nested_spec.rs"

[[test]]
name = "resource_limits_test"
path = "tests/resource_limits_test.rs"

[[test]]
name = "run_fuzz_targets"
path = "tests/run_fuzz_targets.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 = "temporal_slicing"
path = "tests/temporal_slicing.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.async-trait]
version = "0.1"

[dependencies.boolean_expression]
version = "0.4"

[dependencies.chrono]
version = "0.4"
features = ["serde"]

[dependencies.indexmap]
version = "2.0"
features = ["serde"]

[dependencies.regex]
version = "1.0"

[dependencies.reqwest]
version = "0.12"
features = ["rustls-tls"]
optional = true
default-features = false

[dependencies.rust_decimal]
version = "1.33"
features = ["serde"]

[dependencies.serde]
version = "1.0"
features = [
    "derive",
    "rc",
]

[dependencies.serde_json]
version = "1.0"

[dependencies.sha2]
version = "0.10"

[dependencies.strum]
version = "0.26"

[dependencies.strum_macros]
version = "0.26"

[dev-dependencies.insta]
version = "1.34"

[dev-dependencies.proptest]
version = "1.4"

[dev-dependencies.tokio]
version = "1.39.2"
features = ["full"]

[target.'cfg(target_arch = "wasm32")'.dependencies.console_error_panic_hook]
version = "0.1"

[target.'cfg(target_arch = "wasm32")'.dependencies.gloo-net]
version = "0.6"

[target.'cfg(target_arch = "wasm32")'.dependencies.js-sys]
version = "0.3"

[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen]
version = "0.2.104"

[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen-futures]
version = "0.4"

[lints.rust]
dead_code = "deny"