type-state-builder 0.5.1

Type-state builder pattern derive macro with compile-time safety and enhanced ergonomics.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
use type_state_builder::TypeStateBuilder;

#[derive(TypeStateBuilder)]
struct InvalidStruct {
    // This should be an error: required fields cannot have default values
    #[builder(required, default = String::from("default"))]
    name: String,

    email: Option<String>,
}

fn main() {}