# Lazy-RE
A simple proc macro for the lazy reverse engineers.
It basically creates the padding for you.
```rust
#[repr(C, packed)]
#[lazy_re]
struct Lights {
#[lazy_re(offset = 0x10)]
x: f32,
y: f32,
z: f32
}
#[repr(C, packed)]
#[lazy_re]
struct PlayerEntity {
#[lazy_re(offset = 0x48)]
light: Lights,
#[lazy_re(offset = 0x90)]
player_x: f32,
player_y: f32,
player_z: f32,
}
```
That would create the padding for the `Light` struct at the beginning, i.e.
the `x` field will be at the offset `0x10`, and the rest is filled with `[u8;
0x10]`.
Similarly, the PlayerEntity will have padding until the `Light` struct, and
then it'll pad between the light and the player position, doing the math for
you.