pub trait GLWEKeyswitch<BE: Backend> {
// Required methods
fn glwe_keyswitch_tmp_bytes<R, A, B>(
&self,
res_infos: &R,
a_infos: &A,
key_infos: &B,
) -> usize
where R: GLWEInfos,
A: GLWEInfos,
B: GGLWEInfos;
fn glwe_keyswitch<R, A, K>(
&self,
res: &mut R,
a: &A,
key: &K,
scratch: &mut Scratch<BE>,
)
where R: GLWEToMut + GLWEInfos,
A: GLWEToRef + GLWEInfos,
K: GGLWEPreparedToRef<BE> + GGLWEInfos;
fn glwe_keyswitch_inplace<R, K>(
&self,
res: &mut R,
key: &K,
scratch: &mut Scratch<BE>,
)
where R: GLWEToMut + GLWEInfos,
K: GGLWEPreparedToRef<BE> + GGLWEInfos;
}Required Methods§
fn glwe_keyswitch_tmp_bytes<R, A, B>( &self, res_infos: &R, a_infos: &A, key_infos: &B, ) -> usize
fn glwe_keyswitch<R, A, K>( &self, res: &mut R, a: &A, key: &K, scratch: &mut Scratch<BE>, )
fn glwe_keyswitch_inplace<R, K>( &self, res: &mut R, key: &K, scratch: &mut Scratch<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.