aboutsummaryrefslogtreecommitdiff
path: root/macros
diff options
context:
space:
mode:
authorSimon THOBY <git@nightmared.fr>2023-01-08 22:24:40 +0100
committerSimon THOBY <git@nightmared.fr>2023-01-08 22:28:42 +0100
commitdc3c2ffab697b5d8fce7c69f76528fcfdf2edf38 (patch)
treeaf2dcb95c21a009933492ea80d71b25bdb0e24f6 /macros
parent1d68fa40916295465be142b340f1a6381ea079a1 (diff)
rewrite the examples
Diffstat (limited to 'macros')
-rw-r--r--macros/src/lib.rs7
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());
}