1 unstable release
Uses new Rust 2024
| 0.1.0 | Jul 13, 2025 |
|---|
#8 in #skilltree
Used in 6 crates
(4 directly)
165KB
3K
SLoC
Grower Skill Tree Skeleton String
The capability-skeleton-string crate is a sophisticated tool to construct and manage hierarchical skill trees that can be represented as string-based skeleton structures. It offers a robust framework for defining, manipulating, and converting skill nodes with concrete subcomponents that carry physical significance.
Features
- Concrete and Meaningful Subcomponents: Nodes are categorized using non-trivial, concrete elements to ensure meaningful hierarchies.
- Complex Data Handling: Structs and Enums such as
StringSkeletonNode,DispatchChildSpec, andAggregateChildSpecmanage node configurations with attributes like probability and ordering. - Bidirectional Conversion: Convert between string-based and numeric skill tree skeletons, maintaining integrity through features such as name collision detection and optional field management.
- Advanced Fuzzy Parsing: The module offers
fuzzy_from_json_valueimplementations for enriched JSON parsing capabilities with data validation and transformation. - Unified Variant Management: Functionality to unify and manage complex enum variants within hierarchical data structures.
Usage
The primary components of this library include various structs and enums that allow detailed crafting of skill trees with nodes and branches:
StringSkeletonNode: Encapsulates types likeDispatch,LeafHolder, andAggregate, allowing node distinction by roles and attributes.StringSkeleton: Serves as the container for the entire skeleton configuration.unify_complex_enum_single_variant_inplace: Facilitates the unified processing of complex enums across nested structures.
This library mandates the usage of Rust 2024 edition, ensuring modern enhancements and support of the latest mutually intelligent programming paradigms.
use capability_skeleton_string::*;
let mut value = serde_json::from_str("...json...").unwrap();
unify_complex_enum_single_variant_inplace(&mut value);
This readme is generated by an AI model and aims to accurately reflect the capabilities and usage of the crate. While efforts have been made to ensure precision, some details may be subject to interpretation.
Dependencies
~48–91MB
~1.5M SLoC