pub struct InferenceInfo {
pub candidates: Vec<InferenceCandidate>,
pub upper_bounds: Vec<TypeId>,
pub resolved: Option<TypeId>,
}Expand description
Value stored for each inference variable root.
Fields§
§candidates: Vec<InferenceCandidate>§upper_bounds: Vec<TypeId>§resolved: Option<TypeId>Implementations§
Trait Implementations§
Source§impl Clone for InferenceInfo
impl Clone for InferenceInfo
Source§fn clone(&self) -> InferenceInfo
fn clone(&self) -> InferenceInfo
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 InferenceInfo
impl Debug for InferenceInfo
Source§impl Default for InferenceInfo
impl Default for InferenceInfo
Source§fn default() -> InferenceInfo
fn default() -> InferenceInfo
Returns the “default value” for a type. Read more
Source§impl UnifyValue for InferenceInfo
impl UnifyValue for InferenceInfo
Source§type Error = NoError
type Error = NoError
Defines the type to return when merging of two values fails.
If merging is infallible, use the special struct
NoError
found in this crate, which unlocks various more convenient
methods on the unification table.Source§fn unify_values(a: &Self, b: &Self) -> Result<Self, Self::Error>
fn unify_values(a: &Self, b: &Self) -> Result<Self, Self::Error>
Given two values, produce a new value that combines them.
If that is not possible, produce an error.
Auto Trait Implementations§
impl Freeze for InferenceInfo
impl RefUnwindSafe for InferenceInfo
impl Send for InferenceInfo
impl Sync for InferenceInfo
impl Unpin for InferenceInfo
impl UnsafeUnpin for InferenceInfo
impl UnwindSafe for InferenceInfo
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