Metastruct is Rust library for metaprogramming with struct fields.
Some of the things you can do with metastruct
include:
- Iterate over a struct's fields.
- Map a closure over all or some of a struct's fields.
- Access the number of fields in a struct at compile-time via a
const
.
This is achieved by a procedural macro, which generates macro_rules!
macros.
One way of understanding metastruct
is as a shortcut to writing your own derive macros. If
you have a trait that you'd like to implement on a one-off basis, metastruct can help you write
that implementation without a derive macro.
This library is currently under construction and should not be considered stable.
There's currently no documentation aside from a few scant code comments and examples/tests.
Apache 2.0