pub enum TypeExprKind {
Named(Symbol),
Var(Symbol),
App(Symbol, Vec<TypeExpr>),
Arrow(Box<TypeExpr>, Box<TypeExpr>),
Tuple(Vec<TypeExpr>),
Paren(Box<TypeExpr>),
}Variants§
Named(Symbol)
A named type: Int, Bool, option, etc.
Var(Symbol)
A type variable: 'a
App(Symbol, Vec<TypeExpr>)
Type application: 'a list, ('a, 'b) either
Arrow(Box<TypeExpr>, Box<TypeExpr>)
Arrow: a -> b
Tuple(Vec<TypeExpr>)
Tuple: a * b * c
Paren(Box<TypeExpr>)
Parenthesized
Trait Implementations§
Source§impl Clone for TypeExprKind
impl Clone for TypeExprKind
Source§fn clone(&self) -> TypeExprKind
fn clone(&self) -> TypeExprKind
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 TypeExprKind
impl Debug for TypeExprKind
Source§impl PartialEq for TypeExprKind
impl PartialEq for TypeExprKind
impl StructuralPartialEq for TypeExprKind
Auto Trait Implementations§
impl Freeze for TypeExprKind
impl RefUnwindSafe for TypeExprKind
impl Send for TypeExprKind
impl Sync for TypeExprKind
impl Unpin for TypeExprKind
impl UnsafeUnpin for TypeExprKind
impl UnwindSafe for TypeExprKind
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