pub enum ErrorReason {
Show 14 variants InputMustHaveTheSameSize, InputMetaDataMustAgree, InputMustBeComplex, InputMustBeReal, InputMustBeInTimeDomain, InputMustBeInFrequencyDomain, InvalidArgumentLength, InputMustBeConjSymmetric, InputMustHaveAnOddLength, ArgumentFunctionMustBeSymmetric, InvalidNumberOfArgumentsForCombinedOp, InputMustNotBeEmpty, InputMustHaveAnEvenLength, TypeCanNotResize,
}
Expand description

Enumeration of all error reasons

Variants

InputMustHaveTheSameSize

The operations requires all inputs to have the same size, in most cases this means that the following must be true: self.len() == argument.len()

InputMetaDataMustAgree

The operations requires all inputs to have the same meta data. For a vector this means that the following must be true: self.is_complex() == argument.is_complex() && self.domain() == argument.domain() && self.delta()== argument.domain(); Consider to convert one of the inputs so that this condition is true. The necessary operations may include FFT/IFFT, complex/real conversion and resampling.

InputMustBeComplex

The operation requires the input to be complex.

InputMustBeReal

The operation requires the input to be real.

InputMustBeInTimeDomain

The operation requires the input to be in time domain.

InputMustBeInFrequencyDomain

The operation requires the input to be in frequency domain.

InvalidArgumentLength

The arguments have an invalid length to perform the operation. The operations documentation should have more information about the requirements. Please open a defect if this isn’t the case.

InputMustBeConjSymmetric

The operations is only valid if the data input contains half of a symmetric spectrum. The symmetry definition follows soon however more important is that the element at 0 Hz which happens to be the first vector element must be real. The error message is raised if this is violated, the rest of the definition is only listed here for completeness snce it can’t be checked. The required symmetry for a vector is that for every point vector[x].conj() == vector[-x](pseudocode) where x is the x-axis position relative to 0 Hz and conj is the complex conjugate.

InputMustHaveAnOddLength

self.points() must be an odd number.

ArgumentFunctionMustBeSymmetric

The function passed as argument must be symmetric

InvalidNumberOfArgumentsForCombinedOp

The number of arguments passed into a combined operation methods doesn’t match with the number of arguments specified previously via the add_op methods.

InputMustNotBeEmpty

The operation isn’t specified for an empty vector.

InputMustHaveAnEvenLength

Given input must have an even length.

TypeCanNotResize

The arguments would require that the type allocates larger memory. But the type can’t do that.

Trait Implementations

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The alignment of pointer.
The type for initializers.
Initializes a with the given initializer. Read more
Dereferences the given pointer. Read more
Mutably dereferences the given pointer. Read more
Drops the object pointed to by the given pointer. Read more
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.