#reflection #derive #introspection #deserialize #macro-derive #serialization #proc-macro

macro shapely-derive

Proc macro for deriving the 'Shapely' trait in shapely

5 releases (3 major breaking)

Uses new Rust 2024

new 3.0.0 Mar 11, 2025
2.0.1 Mar 11, 2025
1.0.0 Mar 10, 2025
0.1.0-alpha.1 Mar 10, 2025

#2538 in Encoding

Download history

108 downloads per month
Used in 6 crates (2 directly)

MIT/Apache

25KB
456 lines

shapely-derive

experimental free of syn crates.io documentation MIT/Apache-2.0 licensed

[!IMPORTANT]

There is no stable shapely API as of now (even though it's >1.0.0). The design is very much still being explored.

Expect multiple major versions in the near future — (note left 2025-03-11)

shapely-derive provides procedural macros to derive the Shapely trait from shapely.

This crate implements the #[derive(Shapely)] macro which automatically generates runtime reflection code for Rust structs, providing:

  • Structure parsing and representation
  • Field access and manipulation
  • Integration with the shapely runtime reflection system

The implementation uses unsynn for efficient and fast compilation.

License

Licensed under either of:

at your option.

Dependencies

~195KB