1#[derive(thiserror::Error, std::fmt::Debug)]
2pub enum PolyError {
4 #[error("Supplied coefficients cannot be NaN or Infinity")]
6 InvalidCoefficients,
7
8 #[error("Cannot convert complex {0} to float.")]
10 ComplexTof64Conversion(Box<str>),
11
12 #[error("Supplied Polynomial is trivial.")]
14 Trivial,
15
16 #[error("Supplied Polynomial must be of order {0}")]
18 IncorrectOrder(usize),
19
20 #[error("Supplied Polynomial is constant.")]
22 ConstantPoly,
23
24 #[error("Supplied Polynomial is not quadratic: {0}")]
26 NotQuadratic(Box<str>),
27
28 #[error("Supplied Polynomial has no real roots.")]
30 NoRealRoots,
31
32 #[error("Supplied Polynomial must have real coefficients.")]
34 NotRealCoefficients,
35
36 #[error("Discriminant calculation returned NaN.")]
38 NanDiscriminant,
39}