pub trait CheckBytes<C: ?Sized> {
type Error: Error + 'static;
// Required method
unsafe fn check_bytes<'a>(
value: *const Self,
context: &mut C,
) -> Result<&'a Self, Self::Error>;
}Expand description
A type that can check whether a pointer points to a valid value.
CheckBytes can be derived with CheckBytes or
implemented manually for custom behavior.
Required Associated Types§
Required Methods§
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.
Implementations on Foreign Types§
Source§impl<C: ?Sized> CheckBytes<C> for bool
impl<C: ?Sized> CheckBytes<C> for bool
Source§impl<C: ?Sized> CheckBytes<C> for char
impl<C: ?Sized> CheckBytes<C> for char
Source§impl<C: ?Sized> CheckBytes<C> for f32
impl<C: ?Sized> CheckBytes<C> for f32
Source§impl<C: ?Sized> CheckBytes<C> for f64
impl<C: ?Sized> CheckBytes<C> for f64
Source§impl<C: ?Sized> CheckBytes<C> for i8
impl<C: ?Sized> CheckBytes<C> for i8
Source§impl<C: ?Sized> CheckBytes<C> for i16
impl<C: ?Sized> CheckBytes<C> for i16
Source§impl<C: ?Sized> CheckBytes<C> for i32
impl<C: ?Sized> CheckBytes<C> for i32
Source§impl<C: ?Sized> CheckBytes<C> for i64
impl<C: ?Sized> CheckBytes<C> for i64
Source§impl<C: ?Sized> CheckBytes<C> for i128
impl<C: ?Sized> CheckBytes<C> for i128
Source§impl<C: ?Sized> CheckBytes<C> for str
impl<C: ?Sized> CheckBytes<C> for str
Source§impl<C: ?Sized> CheckBytes<C> for u8
impl<C: ?Sized> CheckBytes<C> for u8
Source§impl<C: ?Sized> CheckBytes<C> for u16
impl<C: ?Sized> CheckBytes<C> for u16
Source§impl<C: ?Sized> CheckBytes<C> for u32
impl<C: ?Sized> CheckBytes<C> for u32
Source§impl<C: ?Sized> CheckBytes<C> for u64
impl<C: ?Sized> CheckBytes<C> for u64
Source§impl<C: ?Sized> CheckBytes<C> for u128
impl<C: ?Sized> CheckBytes<C> for u128
Source§impl<C: ?Sized> CheckBytes<C> for ()
impl<C: ?Sized> CheckBytes<C> for ()
Source§impl<C: ?Sized> CheckBytes<C> for CStr
Available on crate feature std only.
impl<C: ?Sized> CheckBytes<C> for CStr
Available on crate feature
std only.Source§impl<C: ?Sized> CheckBytes<C> for PhantomPinned
impl<C: ?Sized> CheckBytes<C> for PhantomPinned
Source§impl<C: ?Sized> CheckBytes<C> for RangeFull
impl<C: ?Sized> CheckBytes<C> for RangeFull
Source§impl<C: ?Sized> CheckBytes<C> for AtomicBool
Available on has_atomics only.
impl<C: ?Sized> CheckBytes<C> for AtomicBool
Available on
has_atomics only.