#struct-fields #field #macro #iterator #proc-macro #generate

macro metastruct_macro

Abstractions for iterating and mapping over struct fields (proc macro crate)

4 releases

new 0.1.3 Nov 22, 2024
0.1.2 Jul 18, 2024
0.1.1 Jun 19, 2023
0.1.0 Dec 8, 2022

#130 in #struct-fields

Download history 1850/week @ 2024-08-02 1933/week @ 2024-08-09 2318/week @ 2024-08-16 2438/week @ 2024-08-23 2255/week @ 2024-08-30 1667/week @ 2024-09-06 1817/week @ 2024-09-13 1665/week @ 2024-09-20 1568/week @ 2024-09-27 1629/week @ 2024-10-04 2178/week @ 2024-10-11 2218/week @ 2024-10-18 2056/week @ 2024-10-25 1302/week @ 2024-11-01 779/week @ 2024-11-08 1090/week @ 2024-11-15

5,420 downloads per month
Used in metastruct

Apache-2.0

18KB
412 lines

metastruct

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.

🚧 Under Construction 🚧

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.

License

Apache 2.0

Dependencies

~2.5MB
~55K SLoC