PredicateEngine

Trait PredicateEngine 

pub trait PredicateEngine<'a>: MatchEncoder<'a> {
Show 17 methods // Required methods fn read_buffer(&'a self, buffer: &[u8]) -> Result<Predicate<Self::P>, Error>; fn write_buffer( &'a self, pred: &Predicate<Self::P>, buffer: &mut Vec<u8>, ) -> Result<(), Error>; fn rewrite_dip( &'a self, before: &Predicate<Self::P>, m: Match<u32>, ) -> Predicate<Self::P>; fn erase_dip(&'a self, before: &Predicate<Self::P>) -> Predicate<Self::P>; fn erase_except_dip( &'a self, before: &Predicate<Self::P>, ) -> Predicate<Self::P>; fn rewrite_sip( &'a self, before: &Predicate<Self::P>, m: Match<u32>, ) -> Predicate<Self::P>; fn erase_sip(&'a self, before: &Predicate<Self::P>) -> Predicate<Self::P>; fn erase_except_sip( &'a self, before: &Predicate<Self::P>, ) -> Predicate<Self::P>; fn rewrite_dport( &'a self, before: &Predicate<Self::P>, m: Match<u16>, ) -> Predicate<Self::P>; fn erase_dport(&'a self, before: &Predicate<Self::P>) -> Predicate<Self::P>; fn erase_except_dport( &'a self, before: &Predicate<Self::P>, ) -> Predicate<Self::P>; fn rewrite_sport( &'a self, before: &Predicate<Self::P>, m: Match<u16>, ) -> Predicate<Self::P>; fn erase_sport(&'a self, before: &Predicate<Self::P>) -> Predicate<Self::P>; fn erase_except_sport( &'a self, before: &Predicate<Self::P>, ) -> Predicate<Self::P>; fn rewrite_tag( &'a self, before: &Predicate<Self::P>, m: Match<u16>, ) -> Predicate<Self::P>; fn erase_tag(&'a self, before: &Predicate<Self::P>) -> Predicate<Self::P>; fn erase_except_tag( &'a self, before: &Predicate<Self::P>, ) -> Predicate<Self::P>;
}
Expand description

An extended trait of MatchEncoder, which additionally enables serialization and deserialization of a predicate.

It is useful when local storing or remote transmitting predicates.

Required Methods§

fn read_buffer(&'a self, buffer: &[u8]) -> Result<Predicate<Self::P>, Error>

Deserialize a predicate according to the buffer.

fn write_buffer( &'a self, pred: &Predicate<Self::P>, buffer: &mut Vec<u8>, ) -> Result<(), Error>

Serialize the predicate to the buffer.

fn rewrite_dip( &'a self, before: &Predicate<Self::P>, m: Match<u32>, ) -> Predicate<Self::P>

fn erase_dip(&'a self, before: &Predicate<Self::P>) -> Predicate<Self::P>

fn erase_except_dip(&'a self, before: &Predicate<Self::P>) -> Predicate<Self::P>

fn rewrite_sip( &'a self, before: &Predicate<Self::P>, m: Match<u32>, ) -> Predicate<Self::P>

fn erase_sip(&'a self, before: &Predicate<Self::P>) -> Predicate<Self::P>

fn erase_except_sip(&'a self, before: &Predicate<Self::P>) -> Predicate<Self::P>

fn rewrite_dport( &'a self, before: &Predicate<Self::P>, m: Match<u16>, ) -> Predicate<Self::P>

fn erase_dport(&'a self, before: &Predicate<Self::P>) -> Predicate<Self::P>

fn erase_except_dport( &'a self, before: &Predicate<Self::P>, ) -> Predicate<Self::P>

fn rewrite_sport( &'a self, before: &Predicate<Self::P>, m: Match<u16>, ) -> Predicate<Self::P>

fn erase_sport(&'a self, before: &Predicate<Self::P>) -> Predicate<Self::P>

fn erase_except_sport( &'a self, before: &Predicate<Self::P>, ) -> Predicate<Self::P>

fn rewrite_tag( &'a self, before: &Predicate<Self::P>, m: Match<u16>, ) -> Predicate<Self::P>

fn erase_tag(&'a self, before: &Predicate<Self::P>) -> Predicate<Self::P>

fn erase_except_tag(&'a self, before: &Predicate<Self::P>) -> Predicate<Self::P>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§