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

macro metastruct_macro

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

4 releases

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

#134 in #struct-fields

Download history 2137/week @ 2024-10-28 1153/week @ 2024-11-04 761/week @ 2024-11-11 1582/week @ 2024-11-18 2253/week @ 2024-11-25 2076/week @ 2024-12-02 1909/week @ 2024-12-09 1994/week @ 2024-12-16 638/week @ 2024-12-23 836/week @ 2024-12-30 2693/week @ 2025-01-06 2518/week @ 2025-01-13 2681/week @ 2025-01-20 2498/week @ 2025-01-27 3020/week @ 2025-02-03 2887/week @ 2025-02-10

11,140 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
~56K SLoC