```rust use wattlefield::*; // cargo add wattlefield; use wattle_proc::GenerateField;
struct Worker { name: String, id:i32 }
fn main() { let worker = Worker { name: "Karl".tostring(), id: 22 }; let workerinfos = worker.fields(); asserteq!(workerinfos[0].name, String::from("name")); asserteq!(workerinfos[0].ty, String::from("String")); asserteq!(workerinfos[0].value, String::from("Karl")); asserteq!(workerinfos[1].name, String::from("id")); asserteq!(workerinfos[1].ty, String::from("i32")); asserteq!(workerinfos[1].value, String::from("22")); }
```