pub trait LWESwitchingKeyEncrypt<BE: Backend> {
// Required methods
fn lwe_switching_key_encrypt_sk_tmp_bytes<A>(&self, infos: &A) -> usize
where A: GGLWEInfos;
fn lwe_switching_key_encrypt_sk<R, S1, S2, E>(
&self,
res: &mut R,
sk_lwe_in: &S1,
sk_lwe_out: &S2,
enc_infos: &E,
source_xe: &mut Source,
source_xa: &mut Source,
scratch: &mut ScratchArena<'_, BE>,
)
where R: GGLWEToBackendMut<BE> + GLWESwitchingKeyDegreesMut + GGLWEInfos,
E: EncryptionInfos,
S1: LWESecretToBackendRef<BE>,
S2: LWESecretToBackendRef<BE>;
}Required Methods§
fn lwe_switching_key_encrypt_sk_tmp_bytes<A>(&self, infos: &A) -> usizewhere
A: GGLWEInfos,
fn lwe_switching_key_encrypt_sk<R, S1, S2, E>(
&self,
res: &mut R,
sk_lwe_in: &S1,
sk_lwe_out: &S2,
enc_infos: &E,
source_xe: &mut Source,
source_xa: &mut Source,
scratch: &mut ScratchArena<'_, BE>,
)where
R: GGLWEToBackendMut<BE> + GLWESwitchingKeyDegreesMut + GGLWEInfos,
E: EncryptionInfos,
S1: LWESecretToBackendRef<BE>,
S2: LWESecretToBackendRef<BE>,
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.