3 unstable releases
0.2.1-beta | Sep 4, 2024 |
---|---|
0.2.0-beta | Sep 4, 2024 |
0.1.0-beta | Aug 25, 2024 |
#389 in Procedural macros
93 downloads per month
11KB
207 lines
CrabStructor v0.2.0-beta
Init with literal
#[derive(Constructor, PartialEq, Debug)]
struct Example {
#[init(10)]
field: i32,
}
assert_eq!(Example::new(), Example {field: 10});
Call new func
#[derive(Constructor, PartialEq, Debug)]
struct Example {
#[new("string")]
field: Arc<String>,
}
assert_eq!(Example::new(), Example {field: Arc::new("string".into())});
#[derive(Constructor, PartialEq, Debug)]
struct Example {
#[new(arc_string: String)]
field: Arc<String>,
}
assert_eq!(Example::new("string".to_string()), Example {field: Arc::new("string".into())});
Alert
This is dev version of lib
Supported types
- All strings, which implement "Into" trait
- All rust nums
- Bool types
Dependencies
~220–660KB
~16K SLoC