Derive macros for [photon_ring::Pod] and [photon_ring::Message].
Pod derive
#[derive(photon_ring::Pod)]
struct Quote {
price: f64,
volume: u32,
}
This generates #[repr(C)], #[derive(Clone, Copy)], and
unsafe impl photon_ring::Pod for Quote {} — with a compile-time
check that every field type implements Pod.
Message derive
#[derive(photon_ring::Message)]
struct Order {
price: f64,
qty: u32,
side: Side, // any #[repr(u8)] enum
filled: bool,
tag: Option<u32>,
}
Generates a Pod-compatible wire struct (OrderWire) plus From
conversions in both directions. See [derive_message] for details.