diff options
author | Simon THOBY <git@nightmared.fr> | 2023-01-08 22:24:40 +0100 |
---|---|---|
committer | Simon THOBY <git@nightmared.fr> | 2023-01-08 22:28:42 +0100 |
commit | dc3c2ffab697b5d8fce7c69f76528fcfdf2edf38 (patch) | |
tree | af2dcb95c21a009933492ea80d71b25bdb0e24f6 /macros | |
parent | 1d68fa40916295465be142b340f1a6381ea079a1 (diff) |
rewrite the examples
Diffstat (limited to 'macros')
-rw-r--r-- | macros/src/lib.rs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/macros/src/lib.rs b/macros/src/lib.rs index 9170e82..39f0d01 100644 --- a/macros/src/lib.rs +++ b/macros/src/lib.rs @@ -187,6 +187,9 @@ pub fn nfnetlink_struct(attrs: TokenStream, item: TokenStream) -> TokenStream { let getter_name = format!("get_{}", field_str); let getter_name = Ident::new(&getter_name, field.name.span()); + let muttable_getter_name = format!("get_mut_{}", field_str); + let muttable_getter_name = Ident::new(&muttable_getter_name, field.name.span()); + let setter_name = format!("set_{}", field_str); let setter_name = Ident::new(&setter_name, field.name.span()); @@ -199,6 +202,10 @@ pub fn nfnetlink_struct(attrs: TokenStream, item: TokenStream) -> TokenStream { self.#field_name.as_ref() } + pub fn #muttable_getter_name(&mut self) -> Option<&mut #field_type> { + self.#field_name.as_mut() + } + pub fn #setter_name(&mut self, val: impl Into<#field_type>) { self.#field_name = Some(val.into()); } |