parser: Tweak type and fn precedence
This commit is contained in:
@@ -440,7 +440,7 @@ fn from_bind(p: &mut Parser<'_>) -> PResult<(BindOp, PPrec, Option<TKind>, Optio
|
||||
let bk = match p.peek()?.kind {
|
||||
// Token Operator Pat prec Body Token Body prec Else prec
|
||||
TKind::Let => (BindOp::Let, PPrec::Tuple, Some(TKind::Eq), Some(Prec::Tuple), Some(Prec::Body)),
|
||||
TKind::Type => (BindOp::Type, PPrec::Tuple, Some(TKind::Eq), Some(Prec::Extend), None),
|
||||
TKind::Type => (BindOp::Type, PPrec::Alt, Some(TKind::Eq), Some(Prec::Tuple), None),
|
||||
TKind::Struct => (BindOp::Struct, PPrec::Tuple, None, None, None),
|
||||
TKind::Enum => (BindOp::Enum, PPrec::Tuple, None, None, None),
|
||||
TKind::Fn => (BindOp::Fn, PPrec::Fn, None, Some(Prec::Body), None),
|
||||
|
||||
@@ -151,7 +151,7 @@ impl<'t> Parse<'t> for Pat {
|
||||
let kind = tok.kind;
|
||||
head = match op {
|
||||
PatOp::Typed => Pat::Op(op, vec![head, p.consume().parse(prec.next())?]),
|
||||
PatOp::Fn => Pat::Op(op, vec![head, p.consume().parse(Prec::Fn.next())?]),
|
||||
PatOp::Fn => Pat::Op(op, vec![head, p.consume().parse(Prec::Fn)?]),
|
||||
PatOp::RangeEx | PatOp::RangeIn => Pat::Op(
|
||||
op,
|
||||
match p.consume().peek().map(Token::kind) {
|
||||
|
||||
Reference in New Issue
Block a user