diff options
author | Simon THOBY <git@nightmared.fr> | 2022-12-03 22:47:53 +0100 |
---|---|---|
committer | Simon THOBY <git@nightmared.fr> | 2022-12-03 22:50:09 +0100 |
commit | 4b60b3cd41f5198c47a260ce69abf4c15b60ca92 (patch) | |
tree | ef3b7df96306820fc35db909762ac3c4227de87f /src/expr/meta.rs | |
parent | 3b11070076f0509f9423d6c4f582f6cf636df65a (diff) |
convert the expressions to the new macros
Diffstat (limited to 'src/expr/meta.rs')
-rw-r--r-- | src/expr/meta.rs | 45 |
1 files changed, 13 insertions, 32 deletions
diff --git a/src/expr/meta.rs b/src/expr/meta.rs index bb8023d..c4c1adb 100644 --- a/src/expr/meta.rs +++ b/src/expr/meta.rs @@ -1,11 +1,11 @@ -use super::{Expression, Register, Rule}; +use rustables_macros::nfnetlink_struct; + +use super::{Expression, Register}; use crate::{ - create_wrapper_type, nlmsg::{NfNetlinkAttribute, NfNetlinkDeserializable}, parser::DecodeError, sys, }; -use std::convert::TryFrom; /// A meta expression refers to meta data associated with a packet. #[derive(Debug, Copy, Clone, Eq, PartialEq)] @@ -78,35 +78,16 @@ impl NfNetlinkDeserializable for MetaType { } } -create_wrapper_type!( - inline: Meta, - [ - ( - get_dreg, - set_dreg, - with_dreg, - sys::NFTA_META_DREG, - dreg, - Register - ), - ( - get_key, - set_key, - with_key, - sys::NFTA_META_KEY, - key, - MetaType - ), - ( - get_sreg, - set_sreg, - with_sreg, - sys::NFTA_META_SREG, - sreg, - Register - ) - ] -); +#[derive(Clone, PartialEq, Eq, Default, Debug)] +#[nfnetlink_struct] +pub struct Meta { + #[field(sys::NFTA_META_DREG)] + dreg: Register, + #[field(sys::NFTA_META_KEY)] + key: MetaType, + #[field(sys::NFTA_META_SREG)] + sreg: Register, +} impl Expression for Meta { fn get_name() -> &'static str { |