pub struct GraphSolution {
pub type_vars: Vec<ResolvedTypeVar>,
}Fields§
§type_vars: Vec<ResolvedTypeVar>Implementations§
Source§impl GraphSolution
impl GraphSolution
pub fn is_complete(&self) -> bool
pub fn substitutions(&self) -> Vec<TypeSubstitution>
pub fn solution_for(&self, var: &TypeVar) -> Option<&Type>
pub fn materialize_core(&self, ty: Type) -> Type
Trait Implementations§
Source§impl Clone for GraphSolution
impl Clone for GraphSolution
Source§fn clone(&self) -> GraphSolution
fn clone(&self) -> GraphSolution
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 moreSource§impl Debug for GraphSolution
impl Debug for GraphSolution
Source§impl PartialEq for GraphSolution
impl PartialEq for GraphSolution
Source§fn eq(&self, other: &GraphSolution) -> bool
fn eq(&self, other: &GraphSolution) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Eq for GraphSolution
impl StructuralPartialEq for GraphSolution
Auto Trait Implementations§
impl Freeze for GraphSolution
impl RefUnwindSafe for GraphSolution
impl Send for GraphSolution
impl Sync for GraphSolution
impl Unpin for GraphSolution
impl UnsafeUnpin for GraphSolution
impl UnwindSafe for GraphSolution
Blanket Implementations§
Source§impl<T> Back for Twhere
T: Clone,
impl<T> Back for Twhere
T: Clone,
type Checkpoint = T
fn checkpoint(&mut self) -> <T as Back>::Checkpoint
fn rollback(&mut self, checkpoint: <T as Back>::Checkpoint)
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,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<It> ExpectedItem<It> for Itwhere
It: PartialEq,
impl<It> ExpectedItem<It> for Itwhere
It: PartialEq,
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>
Converts
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>
Converts
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 more