pub enum EdgeErrors {
Show 23 variants
InvalidArgument(String),
MustBePositive(String),
UnknownMethod {
kind: &'static str,
name: String,
expected: &'static str,
},
ShapeMismatch {
expected: (usize, usize),
got: (usize, usize),
},
LengthMismatch {
name: &'static str,
expected: usize,
got: usize,
},
EmptyCounts {
n_genes: usize,
n_samples: usize,
},
DesignNotFullRank {
n_cols: usize,
rank: usize,
},
NotEstimableContrast {
contrast: usize,
coef: usize,
},
CoefOutOfRange {
index: usize,
n_coef: usize,
},
CholeskyFailed(String),
SolveFailed(String),
EigenFailed(String),
NoConvergence {
routine: &'static str,
iterations: usize,
last_delta: f64,
},
RootNotBracketed {
lower: f64,
upper: f64,
f_lower: f64,
f_upper: f64,
},
InvalidBounds {
index: usize,
lower: f64,
upper: f64,
},
MalformedSparse(String),
NoGenesAfterFiltering {
n_genes: usize,
},
InvalidReferenceColumn(String),
InvalidDispersion(f64),
AplWorkspaceNotStarted,
SubjectsNotContiguous {
subject: usize,
},
MissingIntercept,
TooFewSubjects {
required: usize,
got: usize,
},
}Expand description
Every failure mode in the crate.
Variants§
InvalidArgument(String)
A parameter fell outside its documented domain.
MustBePositive(String)
A count, size or index that must be non-zero was zero.
UnknownMethod
A named method string did not match any known variant.
Fields
ShapeMismatch
Two operands disagreed on shape.
LengthMismatch
A vector was not the length its consumer required.
Fields
EmptyCounts
The counts matrix had no genes or no samples.
DesignNotFullRank
The design matrix is rank deficient, so coefficients are not identifiable.
NotEstimableContrast
A contrast put weight on a coefficient the design cannot estimate.
Fields
CoefOutOfRange
A contrast or coefficient index pointed outside the design.
CholeskyFailed(String)
A Cholesky factorisation failed, meaning the matrix was not positive definite.
SolveFailed(String)
A linear solve produced a non-finite result.
EigenFailed(String)
A symmetric eigendecomposition did not converge.
NoConvergence
A scalar optimiser or root finder did not converge inside its iteration budget.
Fields
RootNotBracketed
A bracketing root finder was handed an interval that does not bracket a root.
Fields
InvalidBounds
A bounded optimisation was given a box with a lower bound above its upper bound.
Fields
MalformedSparse(String)
A compressed sparse structure violated its own invariants.
NoGenesAfterFiltering
Every gene was filtered out before a normalisation factor could be computed.
InvalidReferenceColumn(String)
The reference column for TMM could not be chosen or was out of range.
InvalidDispersion(f64)
A dispersion outside [0, inf) was supplied to a negative binomial routine.
AplWorkspaceNotStarted
An adjusted profile likelihood was asked for before a gene was loaded.
SubjectsNotContiguous
Cells were not grouped contiguously by subject, which every inner loop assumes.
MissingIntercept
The design matrix handed to NEBULA has no intercept column.
TooFewSubjects
Fewer subjects than the mixed model can identify a random effect from.
Trait Implementations§
Source§impl Debug for EdgeErrors
impl Debug for EdgeErrors
Source§impl Display for EdgeErrors
impl Display for EdgeErrors
Source§impl Error for EdgeErrors
impl Error for EdgeErrors
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Auto Trait Implementations§
impl Freeze for EdgeErrors
impl RefUnwindSafe for EdgeErrors
impl Send for EdgeErrors
impl Sync for EdgeErrors
impl Unpin for EdgeErrors
impl UnsafeUnpin for EdgeErrors
impl UnwindSafe for EdgeErrors
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T, U> Imply<T> for U
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.