product_farm_core/
lib.rs

1//! Product-FARM Core Domain Types
2//!
3//! This crate defines the core domain types for the Product-FARM rule engine.
4//! All types are generic and domain-agnostic - specific domains (insurance, trading, etc.)
5//! are configured through DataTypes, Enums, Attributes, and Rules.
6//!
7//! ## Path Formats (Legacy Compatible)
8//!
9//! - **Concrete Path**: `{productId}:{componentType}:{componentId}:{attributeName}`
10//!   - Example: `insuranceV1:cover:basic:premium`
11//!
12//! - **Abstract Path**: `{productId}:abstract-path:{componentType}[:{componentId}]:{attributeName}`
13//!   - Example: `insuranceV1:abstract-path:cover:premium`
14//!   - Example with component ID: `insuranceV1:abstract-path:cover:basic:premium`
15
16pub mod types;
17pub mod product;
18pub mod attribute;
19pub mod rule;
20pub mod datatype;
21pub mod functionality;
22pub mod template;
23pub mod error;
24pub mod value;
25pub mod builders;
26pub mod validation;
27pub mod clone;
28pub mod evaluator;
29
30pub use types::*;
31pub use product::*;
32pub use attribute::*;
33pub use rule::*;
34pub use datatype::*;
35pub use functionality::*;
36pub use template::*;
37pub use error::*;
38pub use value::*;
39pub use builders::*;
40pub use validation::*;
41pub use clone::*;
42pub use evaluator::*;