Trait SplitArrayRaw

Source
pub trait SplitArrayRaw<const LEN: usize> {
    type Output<const OUT_SIZE: usize>: SplitArrayRaw<OUT_SIZE>;

    // Required method
    unsafe fn split_arr_raw<const LEFT: usize>(
        self,
    ) -> (Self::Output<LEFT>, Self::Output<{ _ }>)
       where [(); { _ }]:;
}
Expand description

Raw version of SplitArray.

Required Associated Types§

Source

type Output<const OUT_SIZE: usize>: SplitArrayRaw<OUT_SIZE>

The result of a split.

Required Methods§

Source

unsafe fn split_arr_raw<const LEFT: usize>( self, ) -> (Self::Output<LEFT>, Self::Output<{ _ }>)
where [(); { _ }]:,

Split an array pointer into a pointer to the left half and a pointer to the right half. The sizes of the halves are validated at compile time.

§Safety

self must be valid.

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<T, const LEN: usize> SplitArrayRaw<LEN> for *const [T; LEN]

Source§

type Output<const OUT_SIZE: usize> = *const [T; OUT_SIZE]

Source§

unsafe fn split_arr_raw<const LEFT: usize>( self, ) -> (*const [T; LEFT], *const [T; { _ }])
where [(); { _ }]:,

Implementors§