pub trait DeepValidator: Validator {
// Required method
fn is_valid_deep(&self, buffer: &[u8]) -> bool;
}zero-copy only.Expand description
A trait for deep validation of zero-copy structures, recursively checking all pointers.
Required Methods§
Sourcefn is_valid_deep(&self, buffer: &[u8]) -> bool
fn is_valid_deep(&self, buffer: &[u8]) -> bool
Performs a deep validation check on the relative pointer.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementations on Foreign Types§
Source§impl DeepValidator for bool
impl DeepValidator for bool
Source§fn is_valid_deep(&self, _buffer: &[u8]) -> bool
fn is_valid_deep(&self, _buffer: &[u8]) -> bool
Performs a deep validation check on the relative pointer.
Source§impl DeepValidator for char
impl DeepValidator for char
Source§fn is_valid_deep(&self, _buffer: &[u8]) -> bool
fn is_valid_deep(&self, _buffer: &[u8]) -> bool
Performs a deep validation check on the relative pointer.
Source§impl DeepValidator for f32
impl DeepValidator for f32
Source§fn is_valid_deep(&self, _buffer: &[u8]) -> bool
fn is_valid_deep(&self, _buffer: &[u8]) -> bool
Performs a deep validation check on the relative pointer.
Source§impl DeepValidator for f64
impl DeepValidator for f64
Source§fn is_valid_deep(&self, _buffer: &[u8]) -> bool
fn is_valid_deep(&self, _buffer: &[u8]) -> bool
Performs a deep validation check on the relative pointer.
Source§impl DeepValidator for i8
impl DeepValidator for i8
Source§fn is_valid_deep(&self, _buffer: &[u8]) -> bool
fn is_valid_deep(&self, _buffer: &[u8]) -> bool
Performs a deep validation check on the relative pointer.
Source§impl DeepValidator for i16
impl DeepValidator for i16
Source§fn is_valid_deep(&self, _buffer: &[u8]) -> bool
fn is_valid_deep(&self, _buffer: &[u8]) -> bool
Performs a deep validation check on the relative pointer.
Source§impl DeepValidator for i32
impl DeepValidator for i32
Source§fn is_valid_deep(&self, _buffer: &[u8]) -> bool
fn is_valid_deep(&self, _buffer: &[u8]) -> bool
Performs a deep validation check on the relative pointer.
Source§impl DeepValidator for i64
impl DeepValidator for i64
Source§fn is_valid_deep(&self, _buffer: &[u8]) -> bool
fn is_valid_deep(&self, _buffer: &[u8]) -> bool
Performs a deep validation check on the relative pointer.
Source§impl DeepValidator for i128
impl DeepValidator for i128
Source§fn is_valid_deep(&self, _buffer: &[u8]) -> bool
fn is_valid_deep(&self, _buffer: &[u8]) -> bool
Performs a deep validation check on the relative pointer.
Source§impl DeepValidator for isize
impl DeepValidator for isize
Source§fn is_valid_deep(&self, _buffer: &[u8]) -> bool
fn is_valid_deep(&self, _buffer: &[u8]) -> bool
Performs a deep validation check on the relative pointer.
Source§impl DeepValidator for u8
impl DeepValidator for u8
Source§fn is_valid_deep(&self, _buffer: &[u8]) -> bool
fn is_valid_deep(&self, _buffer: &[u8]) -> bool
Performs a deep validation check on the relative pointer.
Source§impl DeepValidator for u16
impl DeepValidator for u16
Source§fn is_valid_deep(&self, _buffer: &[u8]) -> bool
fn is_valid_deep(&self, _buffer: &[u8]) -> bool
Performs a deep validation check on the relative pointer.
Source§impl DeepValidator for u32
impl DeepValidator for u32
Source§fn is_valid_deep(&self, _buffer: &[u8]) -> bool
fn is_valid_deep(&self, _buffer: &[u8]) -> bool
Performs a deep validation check on the relative pointer.
Source§impl DeepValidator for u64
impl DeepValidator for u64
Source§fn is_valid_deep(&self, _buffer: &[u8]) -> bool
fn is_valid_deep(&self, _buffer: &[u8]) -> bool
Performs a deep validation check on the relative pointer.
Source§impl DeepValidator for u128
impl DeepValidator for u128
Source§fn is_valid_deep(&self, _buffer: &[u8]) -> bool
fn is_valid_deep(&self, _buffer: &[u8]) -> bool
Performs a deep validation check on the relative pointer.
Source§impl DeepValidator for usize
impl DeepValidator for usize
Source§fn is_valid_deep(&self, _buffer: &[u8]) -> bool
fn is_valid_deep(&self, _buffer: &[u8]) -> bool
Performs a deep validation check on the relative pointer.
Source§impl<T: ZeroCopy + DeepValidator, const N: usize> DeepValidator for [T; N]
impl<T: ZeroCopy + DeepValidator, const N: usize> DeepValidator for [T; N]
Source§fn is_valid_deep(&self, buffer: &[u8]) -> bool
fn is_valid_deep(&self, buffer: &[u8]) -> bool
Performs a deep validation check on the relative pointer.