Fully generic query builder in Rust