pub enum DerivationSignatureProblem {
NoClassValue,
ResultMentionsClassVariable,
Shape,
}Expand description
What is wrong with the signature of a member a derivation was written for — see
Error::DerivationSignature.
Variants§
NoClassValue
No parameter of the member holds the class variable: bottom : a and
allValues : List a. A derivation walks values of the type, and there is none to
walk, so it would have to build one from a description of the type’s constructors.
ResultMentionsClassVariable
The class variable is in the answer: add : a -> a -> a. The walk would be asked
for another value of the type it is walking.
Shape
Some other shape: a derivation is for a -> a -> R and a -> R.
Trait Implementations§
Source§impl Clone for DerivationSignatureProblem
impl Clone for DerivationSignatureProblem
Source§fn clone(&self) -> DerivationSignatureProblem
fn clone(&self) -> DerivationSignatureProblem
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for DerivationSignatureProblem
Source§impl Debug for DerivationSignatureProblem
impl Debug for DerivationSignatureProblem
impl Eq for DerivationSignatureProblem
impl StructuralPartialEq for DerivationSignatureProblem
Auto Trait Implementations§
impl Freeze for DerivationSignatureProblem
impl RefUnwindSafe for DerivationSignatureProblem
impl Send for DerivationSignatureProblem
impl Sync for DerivationSignatureProblem
impl Unpin for DerivationSignatureProblem
impl UnsafeUnpin for DerivationSignatureProblem
impl UnwindSafe for DerivationSignatureProblem
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more