pub trait ScratchTakeCore<B: Backend>where
Self: ScratchTakeBasic + ScratchAvailable,{
Show 19 methods
// Provided methods
fn take_glwe<A>(&mut self, infos: &A) -> (GLWE<&mut [u8]>, &mut Self)
where A: GLWEInfos { ... }
fn take_glwe_slice<A>(
&mut self,
size: usize,
infos: &A,
) -> (Vec<GLWE<&mut [u8]>>, &mut Self)
where A: GLWEInfos { ... }
fn take_glwe_plaintext<A>(
&mut self,
infos: &A,
) -> (GLWEPlaintext<&mut [u8]>, &mut Self)
where A: GLWEInfos { ... }
fn take_gglwe<A>(&mut self, infos: &A) -> (GGLWE<&mut [u8]>, &mut Self)
where A: GGLWEInfos { ... }
fn take_gglwe_prepared<A, M>(
&mut self,
module: &M,
infos: &A,
) -> (GGLWEPrepared<&mut [u8], B>, &mut Self)
where A: GGLWEInfos,
M: ModuleN + VmpPMatBytesOf { ... }
fn take_ggsw<A>(&mut self, infos: &A) -> (GGSW<&mut [u8]>, &mut Self)
where A: GGSWInfos { ... }
fn take_ggsw_prepared<A, M>(
&mut self,
module: &M,
infos: &A,
) -> (GGSWPrepared<&mut [u8], B>, &mut Self)
where A: GGSWInfos,
M: ModuleN + VmpPMatBytesOf { ... }
fn take_ggsw_prepared_slice<A, M>(
&mut self,
module: &M,
size: usize,
infos: &A,
) -> (Vec<GGSWPrepared<&mut [u8], B>>, &mut Self)
where A: GGSWInfos,
M: ModuleN + VmpPMatBytesOf { ... }
fn take_glwe_public_key<A>(
&mut self,
infos: &A,
) -> (GLWEPublicKey<&mut [u8]>, &mut Self)
where A: GLWEInfos { ... }
fn take_glwe_public_key_prepared<A, M>(
&mut self,
module: &M,
infos: &A,
) -> (GLWEPublicKeyPrepared<&mut [u8], B>, &mut Self)
where A: GLWEInfos,
M: ModuleN + VecZnxDftBytesOf { ... }
fn take_glwe_prepared<A, M>(
&mut self,
module: &M,
infos: &A,
) -> (GLWEPrepared<&mut [u8], B>, &mut Self)
where A: GLWEInfos,
M: ModuleN + VecZnxDftBytesOf { ... }
fn take_glwe_secret(
&mut self,
n: Degree,
rank: Rank,
) -> (GLWESecret<&mut [u8]>, &mut Self) { ... }
fn take_glwe_secret_prepared<M>(
&mut self,
module: &M,
rank: Rank,
) -> (GLWESecretPrepared<&mut [u8], B>, &mut Self)
where M: ModuleN + SvpPPolBytesOf { ... }
fn take_glwe_switching_key<A>(
&mut self,
infos: &A,
) -> (GLWESwitchingKey<&mut [u8]>, &mut Self)
where A: GGLWEInfos { ... }
fn take_glwe_switching_key_prepared<A, M>(
&mut self,
module: &M,
infos: &A,
) -> (GLWESwitchingKeyPrepared<&mut [u8], B>, &mut Self)
where A: GGLWEInfos,
M: ModuleN + VmpPMatBytesOf { ... }
fn take_glwe_automorphism_key<A>(
&mut self,
infos: &A,
) -> (GLWEAutomorphismKey<&mut [u8]>, &mut Self)
where A: GGLWEInfos { ... }
fn take_glwe_automorphism_key_prepared<A, M>(
&mut self,
module: &M,
infos: &A,
) -> (GLWEAutomorphismKeyPrepared<&mut [u8], B>, &mut Self)
where A: GGLWEInfos,
M: ModuleN + VmpPMatBytesOf { ... }
fn take_glwe_tensor_key<A, M>(
&mut self,
infos: &A,
) -> (GLWETensorKey<&mut [u8]>, &mut Self)
where A: GGLWEInfos { ... }
fn take_glwe_tensor_key_prepared<A, M>(
&mut self,
module: &M,
infos: &A,
) -> (GLWETensorKeyPrepared<&mut [u8], B>, &mut Self)
where A: GGLWEInfos,
M: ModuleN + VmpPMatBytesOf { ... }
}Provided Methods§
fn take_glwe<A>(&mut self, infos: &A) -> (GLWE<&mut [u8]>, &mut Self)where
A: GLWEInfos,
fn take_glwe_slice<A>(
&mut self,
size: usize,
infos: &A,
) -> (Vec<GLWE<&mut [u8]>>, &mut Self)where
A: GLWEInfos,
fn take_glwe_plaintext<A>(
&mut self,
infos: &A,
) -> (GLWEPlaintext<&mut [u8]>, &mut Self)where
A: GLWEInfos,
fn take_gglwe<A>(&mut self, infos: &A) -> (GGLWE<&mut [u8]>, &mut Self)where
A: GGLWEInfos,
fn take_gglwe_prepared<A, M>( &mut self, module: &M, infos: &A, ) -> (GGLWEPrepared<&mut [u8], B>, &mut Self)
fn take_ggsw<A>(&mut self, infos: &A) -> (GGSW<&mut [u8]>, &mut Self)where
A: GGSWInfos,
fn take_ggsw_prepared<A, M>( &mut self, module: &M, infos: &A, ) -> (GGSWPrepared<&mut [u8], B>, &mut Self)
fn take_ggsw_prepared_slice<A, M>( &mut self, module: &M, size: usize, infos: &A, ) -> (Vec<GGSWPrepared<&mut [u8], B>>, &mut Self)
fn take_glwe_public_key<A>(
&mut self,
infos: &A,
) -> (GLWEPublicKey<&mut [u8]>, &mut Self)where
A: GLWEInfos,
fn take_glwe_public_key_prepared<A, M>( &mut self, module: &M, infos: &A, ) -> (GLWEPublicKeyPrepared<&mut [u8], B>, &mut Self)
fn take_glwe_prepared<A, M>( &mut self, module: &M, infos: &A, ) -> (GLWEPrepared<&mut [u8], B>, &mut Self)
fn take_glwe_secret( &mut self, n: Degree, rank: Rank, ) -> (GLWESecret<&mut [u8]>, &mut Self)
fn take_glwe_secret_prepared<M>(
&mut self,
module: &M,
rank: Rank,
) -> (GLWESecretPrepared<&mut [u8], B>, &mut Self)where
M: ModuleN + SvpPPolBytesOf,
fn take_glwe_switching_key<A>(
&mut self,
infos: &A,
) -> (GLWESwitchingKey<&mut [u8]>, &mut Self)where
A: GGLWEInfos,
fn take_glwe_switching_key_prepared<A, M>( &mut self, module: &M, infos: &A, ) -> (GLWESwitchingKeyPrepared<&mut [u8], B>, &mut Self)
fn take_glwe_automorphism_key<A>(
&mut self,
infos: &A,
) -> (GLWEAutomorphismKey<&mut [u8]>, &mut Self)where
A: GGLWEInfos,
fn take_glwe_automorphism_key_prepared<A, M>( &mut self, module: &M, infos: &A, ) -> (GLWEAutomorphismKeyPrepared<&mut [u8], B>, &mut Self)
fn take_glwe_tensor_key<A, M>(
&mut self,
infos: &A,
) -> (GLWETensorKey<&mut [u8]>, &mut Self)where
A: GGLWEInfos,
fn take_glwe_tensor_key_prepared<A, M>( &mut self, module: &M, infos: &A, ) -> (GLWETensorKeyPrepared<&mut [u8], B>, &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.