| Crates.io | capability-generation-inputs |
| lib.rs | capability-generation-inputs |
| version | 0.1.0 |
| created_at | 2025-07-13 12:44:30.767215+00 |
| updated_at | 2025-07-13 12:44:30.767215+00 |
| description | A Rust crate to manage input parameters for generating tree-based models. It offers validation, serialization, and error handling to ensure robust construction of environment contexts for adaptable systems. |
| homepage | |
| repository | |
| max_upload_size | |
| id | 1750483 |
| size | 188,797 |
capability-generation-inputs is a Rust crate designed to manage and validate the input parameters crucial for configuring and shaping tree-based model generation in adaptable environments. This crate serves as a foundation for more complex systems exploring context-driven growth models, where the inputs shape tree parameters or regenerate models in dynamic contexts.
Structured Input Representation: Utilizes GrowerInputs struct to encapsulate essential environment context details, including global descriptors, targets, neighboring entities, and various sub-environments.
Robust Validation: Provides validation methods to ensure integrity and completeness of input data, raising specific errors like EmptyEnvironmentDescription and EmptyCrateName when constraints are violated.
Serialization and Deserialization: Supports conversion between GrowerInputs structures and TOML strings or files, facilitating easy configuration management.
Error Handling: Defines the GrowerInputError enumeration to handle a range of potential issues, from IO errors to specific TOML serialization/deserialization errors.
use capability_generation_inputs::GrowerInputs;
let input_str = r#"
global_environment_descriptor = "Arboreal Dynamics"
target = "growth_model"
neighbors = ["neighbor1", "neighbor2"]
sub_environments = ["sub1", "sub2"]
"#;
let inputs = GrowerInputs::from_toml_str(input_str).expect("Failed to parse inputs");
assert!(inputs.validate().is_ok());
let output_filename = inputs.output_file_name(); // Will produce "growth_model.json"
println!("Generated output filename: {}", output_filename);
The crate makes use of a comprehensive error handling strategy via GrowerInputError, covering common load and parse issues to ensure resilient applications. Notable errors include:
TomlSerError and TomlDeError for TOML serialization/deserialization failures.Io for input/output operations related issues.derive_builder: Used for building flexible input structures.getset: Implements property-like accessors for input fields.This README.md was generated by an AI model and may not be 100% accurate but should be reasonably reliable for understanding and using this crate.
For detailed API documentation and more nuanced examples, please refer to the project's documentation or contact the maintainer.