Use the alloy sol! macro to generate Rust bindings from Solidity — structs, enums, events, errors, user-defined types, ABI decoding, and derive attributes.