TakeLike

Trait TakeLike 

Source
pub trait TakeLike<'a, B: Backend, T> {
    type Output;

    // Required method
    fn take_like(&'a mut self, template: &T) -> (Self::Output, &'a mut Self);
}

Required Associated Types§

Required Methods§

Source

fn take_like(&'a mut self, template: &T) -> (Self::Output, &'a mut Self)

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<'a, B, D> TakeLike<'a, B, GGLWEAutomorphismKeyPrepared<D, B>> for Scratch<B>
where Scratch<B>: TakeLike<'a, B, GGLWESwitchingKeyPrepared<D, B>, Output = GGLWESwitchingKeyPrepared<&'a mut [u8], B>>, B: Backend + TakeMatZnxImpl<B>, D: DataRef,

Source§

type Output = GGLWEAutomorphismKeyPrepared<&'a mut [u8], B>

Source§

fn take_like( &'a mut self, template: &GGLWEAutomorphismKeyPrepared<D, B>, ) -> (Self::Output, &'a mut Self)

Source§

impl<'a, B, D> TakeLike<'a, B, GGLWECiphertextPrepared<D, B>> for Scratch<B>
where B: Backend + TakeVmpPMatImpl<B>, D: DataRef,

Source§

type Output = GGLWECiphertextPrepared<&'a mut [u8], B>

Source§

fn take_like( &'a mut self, template: &GGLWECiphertextPrepared<D, B>, ) -> (Self::Output, &'a mut Self)

Source§

impl<'a, B, D> TakeLike<'a, B, GGLWESwitchingKeyPrepared<D, B>> for Scratch<B>
where Scratch<B>: TakeLike<'a, B, GGLWECiphertextPrepared<D, B>, Output = GGLWECiphertextPrepared<&'a mut [u8], B>>, B: Backend + TakeMatZnxImpl<B>, D: DataRef,

Source§

type Output = GGLWESwitchingKeyPrepared<&'a mut [u8], B>

Source§

fn take_like( &'a mut self, template: &GGLWESwitchingKeyPrepared<D, B>, ) -> (Self::Output, &'a mut Self)

Source§

impl<'a, B, D> TakeLike<'a, B, GGLWETensorKeyPrepared<D, B>> for Scratch<B>
where Scratch<B>: TakeLike<'a, B, GGLWESwitchingKeyPrepared<D, B>, Output = GGLWESwitchingKeyPrepared<&'a mut [u8], B>>, B: Backend + TakeMatZnxImpl<B>, D: DataRef,

Source§

type Output = GGLWETensorKeyPrepared<&'a mut [u8], B>

Source§

fn take_like( &'a mut self, template: &GGLWETensorKeyPrepared<D, B>, ) -> (Self::Output, &'a mut Self)

Source§

impl<'a, B, D> TakeLike<'a, B, GGSWCiphertextPrepared<D, B>> for Scratch<B>
where B: Backend + TakeVmpPMatImpl<B>, D: DataRef,

Source§

type Output = GGSWCiphertextPrepared<&'a mut [u8], B>

Source§

fn take_like( &'a mut self, template: &GGSWCiphertextPrepared<D, B>, ) -> (Self::Output, &'a mut Self)

Source§

impl<'a, B, D> TakeLike<'a, B, GLWEPublicKeyPrepared<D, B>> for Scratch<B>
where B: Backend + TakeVecZnxDftImpl<B>, D: DataRef,

Source§

type Output = GLWEPublicKeyPrepared<&'a mut [u8], B>

Source§

fn take_like( &'a mut self, template: &GLWEPublicKeyPrepared<D, B>, ) -> (Self::Output, &'a mut Self)

Source§

impl<'a, B, D> TakeLike<'a, B, GLWESecretPrepared<D, B>> for Scratch<B>
where B: Backend + TakeSvpPPolImpl<B>, D: DataRef,

Source§

type Output = GLWESecretPrepared<&'a mut [u8], B>

Source§

fn take_like( &'a mut self, template: &GLWESecretPrepared<D, B>, ) -> (Self::Output, &'a mut Self)

Source§

impl<'a, B, D> TakeLike<'a, B, GGLWEAutomorphismKey<D>> for Scratch<B>
where Scratch<B>: TakeLike<'a, B, GGLWESwitchingKey<D>, Output = GGLWESwitchingKey<&'a mut [u8]>>, B: Backend + TakeMatZnxImpl<B>, D: DataRef,

Source§

type Output = GGLWEAutomorphismKey<&'a mut [u8]>

Source§

fn take_like( &'a mut self, template: &GGLWEAutomorphismKey<D>, ) -> (Self::Output, &'a mut Self)

Source§

impl<'a, B, D> TakeLike<'a, B, GGLWECiphertext<D>> for Scratch<B>
where B: Backend + TakeMatZnxImpl<B>, D: DataRef,

Source§

type Output = GGLWECiphertext<&'a mut [u8]>

Source§

fn take_like( &'a mut self, template: &GGLWECiphertext<D>, ) -> (Self::Output, &'a mut Self)

Source§

impl<'a, B, D> TakeLike<'a, B, GGLWESwitchingKey<D>> for Scratch<B>
where Scratch<B>: TakeLike<'a, B, GGLWECiphertext<D>, Output = GGLWECiphertext<&'a mut [u8]>>, B: Backend + TakeMatZnxImpl<B>, D: DataRef,

Source§

type Output = GGLWESwitchingKey<&'a mut [u8]>

Source§

fn take_like( &'a mut self, template: &GGLWESwitchingKey<D>, ) -> (Self::Output, &'a mut Self)

Source§

impl<'a, B, D> TakeLike<'a, B, GGLWETensorKey<D>> for Scratch<B>
where Scratch<B>: TakeLike<'a, B, GGLWESwitchingKey<D>, Output = GGLWESwitchingKey<&'a mut [u8]>>, B: Backend + TakeMatZnxImpl<B>, D: DataRef,

Source§

type Output = GGLWETensorKey<&'a mut [u8]>

Source§

fn take_like( &'a mut self, template: &GGLWETensorKey<D>, ) -> (Self::Output, &'a mut Self)

Source§

impl<'a, B, D> TakeLike<'a, B, GGSWCiphertext<D>> for Scratch<B>
where B: Backend + TakeMatZnxImpl<B>, D: DataRef,

Source§

type Output = GGSWCiphertext<&'a mut [u8]>

Source§

fn take_like( &'a mut self, template: &GGSWCiphertext<D>, ) -> (Self::Output, &'a mut Self)

Source§

impl<'a, B, D> TakeLike<'a, B, GLWECiphertext<D>> for Scratch<B>
where B: Backend + TakeVecZnxImpl<B>, D: DataRef,

Source§

type Output = GLWECiphertext<&'a mut [u8]>

Source§

fn take_like( &'a mut self, template: &GLWECiphertext<D>, ) -> (Self::Output, &'a mut Self)

Source§

impl<'a, B, D> TakeLike<'a, B, GLWEPlaintext<D>> for Scratch<B>
where B: Backend + TakeVecZnxImpl<B>, D: DataRef,

Source§

type Output = GLWEPlaintext<&'a mut [u8]>

Source§

fn take_like( &'a mut self, template: &GLWEPlaintext<D>, ) -> (Self::Output, &'a mut Self)

Source§

impl<'a, B, D> TakeLike<'a, B, GLWEPublicKey<D>> for Scratch<B>
where B: Backend + TakeVecZnxImpl<B>, D: DataRef,

Source§

type Output = GLWEPublicKey<&'a mut [u8]>

Source§

fn take_like( &'a mut self, template: &GLWEPublicKey<D>, ) -> (Self::Output, &'a mut Self)

Source§

impl<'a, B, D> TakeLike<'a, B, GLWESecret<D>> for Scratch<B>
where B: Backend + TakeScalarZnxImpl<B>, D: DataRef,

Source§

type Output = GLWESecret<&'a mut [u8]>

Source§

fn take_like( &'a mut self, template: &GLWESecret<D>, ) -> (Self::Output, &'a mut Self)

Implementors§