capability-generation-inputs 0.1.0

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.
Documentation

capability-generation-inputs

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.

Key Features

  • 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.

Usage

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);

Error Types

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.

Related Crates

  • derive_builder: Used for building flexible input structures.
  • getset: Implements property-like accessors for input fields.

DISCLAIMER

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.