| Crates.io | brk_traversable_derive |
| lib.rs | brk_traversable_derive |
| version | 0.1.0-beta.0 |
| created_at | 2025-12-18 22:16:38.342291+00 |
| updated_at | 2026-01-25 13:21:58.021833+00 |
| description | Derive for brk_vec's used in BRK |
| homepage | https://bitcoinresearchkit.org |
| repository | https://github.com/bitcoinresearchkit/brk |
| max_upload_size | |
| id | 1993651 |
| size | 21,201 |
Proc-macro for deriving the Traversable trait on data structures.
Automatically generate tree traversal and export iteration for structs, eliminating boilerplate when working with hierarchical data that needs serialization or inspection.
TreeNode::Branch hierarchiesiter_any_exportable() to walk all exportable vectors#[traversable(skip)] to exclude fields, #[traversable(flatten)] to merge nested structuresOption<T> fieldsTraversable + Send + Sync#[derive(Traversable)]
struct MyData {
pub metrics: MetricsCollection,
#[traversable(flatten)]
pub nested: NestedData,
#[traversable(skip)]
internal: Cache,
}
to_tree_node(&self) -> TreeNode - Build navigable tree structureiter_any_exportable(&self) -> impl Iterator<Item = &dyn AnyExportableVec> - Iterate all exportable vectors