From a4f6388ecae7e42222c620a996c57e1e91dd4781 Mon Sep 17 00:00:00 2001 From: rvcas Date: Mon, 12 Dec 2022 18:40:51 -0500 Subject: [PATCH] feat: remove the need for # in front of tuples --- crates/lang/src/parser.rs | 47 ++++++++++++------------------ examples/sample/validators/swap.ak | 8 ++--- 2 files changed, 23 insertions(+), 32 deletions(-) diff --git a/crates/lang/src/parser.rs b/crates/lang/src/parser.rs index d0efa9dd..f55c0fd6 100644 --- a/crates/lang/src/parser.rs +++ b/crates/lang/src/parser.rs @@ -336,13 +336,11 @@ fn constant_value_parser() -> impl Parser impl Parser name, } }), - just(Token::Hash) - .ignore_then( - r.clone() - .separated_by(just(Token::Comma)) - .allow_trailing() - .delimited_by(just(Token::LeftParen), just(Token::RightParen)), - ) + // Tuple + r.clone() + .separated_by(just(Token::Comma)) + .allow_trailing() + .delimited_by(just(Token::LeftParen), just(Token::RightParen)) .map_with_span(|elems, span| ast::Annotation::Tuple { location: span, elems, @@ -1528,13 +1522,10 @@ pub fn pattern_parser() -> impl Parser Bool { - let _x = #(datum, rdmr, #[244]) + let x = (datum, rdmr, #[244]) - let y = [#(#[222], #[222]), #(#[233], #[52])] + let y = [(#[222], #[222]), (#[233], #[52])] let [z, f, ..g] = y - let #(a, b) = x + let (a, b, _) = x - z == #(#[222], #[222]) + z == (#[222], #[222]) } test foo() {