Skip to content

A procedural macro that automatically generates setter methods for a struct's fields.

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

Lymia/derive_setters

Repository files navigation

derive_setters

Latest Version Requires rustc 1.68+ Rust Documentation

Rust macro to automatically generates setter methods for a struct's fields. This can be used to add setters to a plain data struct, or to help in implementing builders.

For a related library that creates separate builder types, see rust-derive-builder.

Basic example

use derive_setters::*;

#[derive(Default, Setters, Debug, PartialEq, Eq)]
struct BasicStruct {
    #[setters(rename = "test")]
    a: u32,
    b: u32,
    c: u32,
}

assert_eq!(
    BasicStruct::default().test(30).b(10).c(20),
    BasicStruct { a: 30, b: 10, c: 20 },
);

License

This project is licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in enumset by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

About

A procedural macro that automatically generates setter methods for a struct's fields.

Topics

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Packages

No packages published

Contributors 8

Languages