| Crates.io | bauer |
| lib.rs | bauer |
| version | 0.1.0 |
| created_at | 2025-11-25 03:48:59.285559+00 |
| updated_at | 2025-11-25 03:48:59.285559+00 |
| description | A derive macro for automatically generating the builder pattern |
| homepage | |
| repository | https://github.com/funnyboy-roks/bauer |
| max_upload_size | |
| id | 1949151 |
| size | 42,367 |
A derive macro for automatically generating the builder pattern
use bauer::Builder;
#[derive(Builder)]
pub struct Foo {
#[builder(default = "42")]
field_a: u32,
field_b: bool,
#[builder(into)]
field_c: String,
#[builder(repeat, repeat_n = 1..4)]
field_d: Vec<f32>,
}
let foo: Foo = Foo::builder()
.field_b(true)
.field_c("hello world")
.field_d(3.14)
.field_d(6.28)
.field_d(2.72)
.build()
.unwrap();
assert_eq!(
foo,
Foo {
field_a: 42,
field_b: true,
field_c: String::from("hello world"),
field_d: vec![3.14, 6.28, 2.72],
},
);