pub struct TypeScheme {
pub vars: Vec<TyVar>,
pub body: InferType,
}Expand description
A quantified polymorphic type.
Stores a set of bound type variables and a body type that may reference them.
Used for generic function signatures: forall [T]. T -> T.
Fields§
§vars: Vec<TyVar>The bound type variables (one per generic type parameter).
body: InferTypeThe body type, which may contain InferType::Var(tv) for each tv in vars.
Trait Implementations§
Source§impl Clone for TypeScheme
impl Clone for TypeScheme
Source§fn clone(&self) -> TypeScheme
fn clone(&self) -> TypeScheme
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 moreAuto Trait Implementations§
impl Freeze for TypeScheme
impl RefUnwindSafe for TypeScheme
impl Send for TypeScheme
impl Sync for TypeScheme
impl Unpin for TypeScheme
impl UnsafeUnpin for TypeScheme
impl UnwindSafe for TypeScheme
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