From 03a9bbacf2a82faaecc269c1d97dea392f4f9874 Mon Sep 17 00:00:00 2001 From: Lukas Wirth Date: Wed, 23 Dec 2020 01:49:43 +0100 Subject: Parse ConstBlockPat --- .../parser/inline/ok/0156_const_block_pat.rast | 76 ++++++++++++++++++++++ .../parser/inline/ok/0156_const_block_pat.rs | 4 ++ 2 files changed, 80 insertions(+) create mode 100644 crates/syntax/test_data/parser/inline/ok/0156_const_block_pat.rast create mode 100644 crates/syntax/test_data/parser/inline/ok/0156_const_block_pat.rs (limited to 'crates/syntax/test_data/parser/inline/ok') diff --git a/crates/syntax/test_data/parser/inline/ok/0156_const_block_pat.rast b/crates/syntax/test_data/parser/inline/ok/0156_const_block_pat.rast new file mode 100644 index 000000000..8ff4822c4 --- /dev/null +++ b/crates/syntax/test_data/parser/inline/ok/0156_const_block_pat.rast @@ -0,0 +1,76 @@ +SOURCE_FILE@0..78 + FN@0..77 + FN_KW@0..2 "fn" + WHITESPACE@2..3 " " + NAME@3..7 + IDENT@3..7 "main" + PARAM_LIST@7..9 + L_PAREN@7..8 "(" + R_PAREN@8..9 ")" + WHITESPACE@9..10 " " + BLOCK_EXPR@10..77 + L_CURLY@10..11 "{" + WHITESPACE@11..16 "\n " + LET_STMT@16..38 + LET_KW@16..19 "let" + WHITESPACE@19..20 " " + CONST_BLOCK_PAT@20..32 + CONST_KW@20..25 "const" + WHITESPACE@25..26 " " + BLOCK_EXPR@26..32 + L_CURLY@26..27 "{" + WHITESPACE@27..28 " " + LITERAL@28..30 + INT_NUMBER@28..30 "15" + WHITESPACE@30..31 " " + R_CURLY@31..32 "}" + WHITESPACE@32..33 " " + EQ@33..34 "=" + WHITESPACE@34..35 " " + TUPLE_EXPR@35..37 + L_PAREN@35..36 "(" + R_PAREN@36..37 ")" + SEMICOLON@37..38 ";" + WHITESPACE@38..43 "\n " + LET_STMT@43..75 + LET_KW@43..46 "let" + WHITESPACE@46..47 " " + CONST_BLOCK_PAT@47..69 + CONST_KW@47..52 "const" + WHITESPACE@52..53 " " + BLOCK_EXPR@53..69 + L_CURLY@53..54 "{" + WHITESPACE@54..55 " " + EXPR_STMT@55..61 + CALL_EXPR@55..60 + PATH_EXPR@55..58 + PATH@55..58 + PATH_SEGMENT@55..58 + NAME_REF@55..58 + IDENT@55..58 "foo" + ARG_LIST@58..60 + L_PAREN@58..59 "(" + R_PAREN@59..60 ")" + SEMICOLON@60..61 ";" + WHITESPACE@61..62 " " + CALL_EXPR@62..67 + PATH_EXPR@62..65 + PATH@62..65 + PATH_SEGMENT@62..65 + NAME_REF@62..65 + IDENT@62..65 "bar" + ARG_LIST@65..67 + L_PAREN@65..66 "(" + R_PAREN@66..67 ")" + WHITESPACE@67..68 " " + R_CURLY@68..69 "}" + WHITESPACE@69..70 " " + EQ@70..71 "=" + WHITESPACE@71..72 " " + TUPLE_EXPR@72..74 + L_PAREN@72..73 "(" + R_PAREN@73..74 ")" + SEMICOLON@74..75 ";" + WHITESPACE@75..76 "\n" + R_CURLY@76..77 "}" + WHITESPACE@77..78 "\n" diff --git a/crates/syntax/test_data/parser/inline/ok/0156_const_block_pat.rs b/crates/syntax/test_data/parser/inline/ok/0156_const_block_pat.rs new file mode 100644 index 000000000..dce9defac --- /dev/null +++ b/crates/syntax/test_data/parser/inline/ok/0156_const_block_pat.rs @@ -0,0 +1,4 @@ +fn main() { + let const { 15 } = (); + let const { foo(); bar() } = (); +} -- cgit v1.2.3 From 2c94c4964aa6242098f97ca3421a750a763567b4 Mon Sep 17 00:00:00 2001 From: Lukas Wirth Date: Wed, 23 Dec 2020 02:15:30 +0100 Subject: Parse const effect block --- .../parser/inline/ok/0157_const_block.rast | 23 ++++++++++++++++++++++ .../test_data/parser/inline/ok/0157_const_block.rs | 1 + 2 files changed, 24 insertions(+) create mode 100644 crates/syntax/test_data/parser/inline/ok/0157_const_block.rast create mode 100644 crates/syntax/test_data/parser/inline/ok/0157_const_block.rs (limited to 'crates/syntax/test_data/parser/inline/ok') diff --git a/crates/syntax/test_data/parser/inline/ok/0157_const_block.rast b/crates/syntax/test_data/parser/inline/ok/0157_const_block.rast new file mode 100644 index 000000000..d5d2c8fe3 --- /dev/null +++ b/crates/syntax/test_data/parser/inline/ok/0157_const_block.rast @@ -0,0 +1,23 @@ +SOURCE_FILE@0..21 + FN@0..20 + FN_KW@0..2 "fn" + WHITESPACE@2..3 " " + NAME@3..4 + IDENT@3..4 "f" + PARAM_LIST@4..6 + L_PAREN@4..5 "(" + R_PAREN@5..6 ")" + WHITESPACE@6..7 " " + BLOCK_EXPR@7..20 + L_CURLY@7..8 "{" + WHITESPACE@8..9 " " + EFFECT_EXPR@9..18 + CONST_KW@9..14 "const" + WHITESPACE@14..15 " " + BLOCK_EXPR@15..18 + L_CURLY@15..16 "{" + WHITESPACE@16..17 " " + R_CURLY@17..18 "}" + WHITESPACE@18..19 " " + R_CURLY@19..20 "}" + WHITESPACE@20..21 "\n" diff --git a/crates/syntax/test_data/parser/inline/ok/0157_const_block.rs b/crates/syntax/test_data/parser/inline/ok/0157_const_block.rs new file mode 100644 index 000000000..a2e3565a3 --- /dev/null +++ b/crates/syntax/test_data/parser/inline/ok/0157_const_block.rs @@ -0,0 +1 @@ +fn f() { const { } } -- cgit v1.2.3