pub enum ParamsError {
InvalidPolynomial(PolynomialError),
ZeroModulusPolynomial,
ConstantModulusPolynomial,
ModulusPolynomialDegreeMismatch {
degree: usize,
max_degree: usize,
},
NonInvertibleModulusPolynomialLead {
coefficient: u64,
modulus: u64,
},
NttLengthOverflow {
max_degree: usize,
},
NttLengthUnsupported {
length: usize,
modulus: u64,
},
InvalidPrimitiveRoot {
primitive_root: u64,
length: usize,
modulus: u64,
},
}Expand description
Errors returned while validating Params.
Variants§
InvalidPolynomial(PolynomialError)
Underlying polynomial validation failed.
ZeroModulusPolynomial
Modulus polynomial cannot be zero.
ConstantModulusPolynomial
Modulus polynomial must be non-constant.
ModulusPolynomialDegreeMismatch
degree(f) must match max_degree for a consistent fixed ring shape.
NonInvertibleModulusPolynomialLead
Leading coefficient of f(x) must be invertible in Z_q.
NttLengthOverflow
Derived transform size overflowed for the selected degree bound.
NttLengthUnsupported
Derived NTT length is unsupported by the modulus (length must divide q - 1).
InvalidPrimitiveRoot
Primitive root does not induce a valid root of unity for the derived NTT length.
Trait Implementations§
Source§impl Clone for ParamsError
impl Clone for ParamsError
Source§fn clone(&self) -> ParamsError
fn clone(&self) -> ParamsError
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ParamsError
impl Debug for ParamsError
Source§impl Display for ParamsError
impl Display for ParamsError
Source§impl Error for ParamsError
impl Error for ParamsError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Source§impl PartialEq for ParamsError
impl PartialEq for ParamsError
impl Eq for ParamsError
impl StructuralPartialEq for ParamsError
Auto Trait Implementations§
impl Freeze for ParamsError
impl RefUnwindSafe for ParamsError
impl Send for ParamsError
impl Sync for ParamsError
impl Unpin for ParamsError
impl UnwindSafe for ParamsError
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more