pub enum TyKind {
Base(BaseTy),
Indexed {
bty: BaseTy,
indices: Indices,
},
Exists {
bind: Ident,
bty: BaseTy,
pred: Expr,
},
GeneralExists {
params: RefineParams,
ty: Box<Ty>,
pred: Option<Expr>,
},
Ref(Mutability, Box<Ty>),
Constr(Expr, Box<Ty>),
Tuple(Vec<Ty>),
Array(Box<Ty>, ConstArg),
ImplTrait(NodeId, GenericBounds),
Hole,
}
Variants§
Base(BaseTy)
ty
Indexed
B[r]
Exists
B{v: r}
GeneralExists
Ref(Mutability, Box<Ty>)
Mutable or shared reference
Constr(Expr, Box<Ty>)
Constrained type: an exists without binder
Tuple(Vec<Ty>)
Array(Box<Ty>, ConstArg)
ImplTrait(NodeId, GenericBounds)
The NodeId
is used to resolve the type to a corresponding OpaqueTy
Hole
Trait Implementations§
Auto Trait Implementations§
impl Freeze for TyKind
impl RefUnwindSafe for TyKind
impl Send for TyKind
impl Sync for TyKind
impl Unpin for TyKind
impl UnwindSafe for TyKind
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