arnaucube
arnaucube/poulpyPublic Self-hosted repository
poulpy/src/modulus/shoup.rs
src/modulus/shoup.rsRaw
 1#[derive(Clone, Copy, Debug, PartialEq, Eq)]
 2pub struct Shoup<O>(pub O, pub O);
 3
 4impl<O> Shoup<O> {
 5    
 6    #[inline(always)]
 7    pub fn value(&self) -> &O {
 8        &self.0
 9    }
10
11    #[inline(always)]
12    pub fn quotient(&self) -> &O {
13        &self.1
14    }
15}
16
17pub struct ShoupPrecomp<O>{
18    pub q: O,
19    pub one: Shoup<O>,
20}
21