Want: proc macro to add getter / setter properties to fields. #[derive(Access)] pub struct Foo { #[access(get, get_mut, set)] bar: bool, } let mut foo = Foo::default(); http://foo.bar (); // false foo.set_bar(true); http://foo.bar (); // true
Also want: a macro to check for kinds: #[derive(Access)] enum Cats { #[access(is)] Tabby, #[access(is)] Spotty, #[access(is)] Snuffles } let cat = Cats::Snuffles; http://cat.is _tabby(); // false http://cat.is _snuffles(); // true