mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-09-28 11:20:54 +00:00
Update tests
Unfortunately, we lost some recovery for expressions.
This commit is contained in:
parent
13ac5c3491
commit
a1b7169b48
@ -542,4 +542,26 @@ fn test() {
|
||||
93,
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn let_chains_can_reference_previous_lets() {
|
||||
do_check_local_name(
|
||||
r#"
|
||||
fn test() {
|
||||
let foo: Option<i32> = None;
|
||||
if let Some(spam) = foo && spa$0m > 1 && let Some(spam) = foo && spam > 1 {}
|
||||
}
|
||||
"#,
|
||||
61,
|
||||
);
|
||||
do_check_local_name(
|
||||
r#"
|
||||
fn test() {
|
||||
let foo: Option<i32> = None;
|
||||
if let Some(spam) = foo && spam > 1 && let Some(spam) = foo && sp$0am > 1 {}
|
||||
}
|
||||
"#,
|
||||
100,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
@ -190,7 +190,6 @@ fn expr_macro_def_expanded_in_various_places() {
|
||||
!0..6 '1isize': isize
|
||||
!0..6 '1isize': isize
|
||||
!0..6 '1isize': isize
|
||||
!0..6 '1isize': isize
|
||||
39..442 '{ ...!(); }': ()
|
||||
73..94 'spam!(...am!())': {unknown}
|
||||
100..119 'for _ ...!() {}': ()
|
||||
@ -198,6 +197,7 @@ fn expr_macro_def_expanded_in_various_places() {
|
||||
117..119 '{}': ()
|
||||
124..134 '|| spam!()': || -> isize
|
||||
140..156 'while ...!() {}': ()
|
||||
146..153 'spam!()': bool
|
||||
154..156 '{}': ()
|
||||
161..174 'break spam!()': !
|
||||
180..194 'return spam!()': !
|
||||
@ -271,7 +271,6 @@ fn expr_macro_rules_expanded_in_various_places() {
|
||||
!0..6 '1isize': isize
|
||||
!0..6 '1isize': isize
|
||||
!0..6 '1isize': isize
|
||||
!0..6 '1isize': isize
|
||||
53..456 '{ ...!(); }': ()
|
||||
87..108 'spam!(...am!())': {unknown}
|
||||
114..133 'for _ ...!() {}': ()
|
||||
@ -279,6 +278,7 @@ fn expr_macro_rules_expanded_in_various_places() {
|
||||
131..133 '{}': ()
|
||||
138..148 '|| spam!()': || -> isize
|
||||
154..170 'while ...!() {}': ()
|
||||
160..167 'spam!()': bool
|
||||
168..170 '{}': ()
|
||||
175..188 'break spam!()': !
|
||||
194..208 'return spam!()': !
|
||||
|
@ -266,6 +266,31 @@ fn main() {
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn move_let_guard_to_arm_body_works() {
|
||||
check_assist(
|
||||
move_guard_to_arm_body,
|
||||
r#"
|
||||
fn main() {
|
||||
match 92 {
|
||||
x $0if (let 1 = x) => false,
|
||||
_ => true
|
||||
}
|
||||
}
|
||||
"#,
|
||||
r#"
|
||||
fn main() {
|
||||
match 92 {
|
||||
x => if (let 1 = x) {
|
||||
false
|
||||
},
|
||||
_ => true
|
||||
}
|
||||
}
|
||||
"#,
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn move_guard_to_arm_body_works_complex_match() {
|
||||
check_assist(
|
||||
@ -426,13 +451,21 @@ fn main() {
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn move_arm_cond_to_match_guard_if_let_not_works() {
|
||||
check_assist_not_applicable(
|
||||
fn move_arm_cond_to_match_guard_if_let_works() {
|
||||
check_assist(
|
||||
move_arm_cond_to_match_guard,
|
||||
r#"
|
||||
fn main() {
|
||||
match 92 {
|
||||
x => if let 62 = x { $0false },
|
||||
x => if let 62 = x && true { $0false },
|
||||
_ => true
|
||||
}
|
||||
}
|
||||
"#,
|
||||
r#"
|
||||
fn main() {
|
||||
match 92 {
|
||||
x if let 62 = x && true => false,
|
||||
_ => true
|
||||
}
|
||||
}
|
||||
@ -884,7 +917,7 @@ fn main() {
|
||||
|
||||
#[test]
|
||||
fn move_arm_cond_to_match_guard_elseif_iflet() {
|
||||
check_assist_not_applicable(
|
||||
check_assist(
|
||||
move_arm_cond_to_match_guard,
|
||||
r#"
|
||||
fn main() {
|
||||
@ -901,9 +934,21 @@ fn main() {
|
||||
4
|
||||
},
|
||||
}
|
||||
}
|
||||
"#,
|
||||
)
|
||||
}"#,
|
||||
r#"
|
||||
fn main() {
|
||||
match 92 {
|
||||
3 => 0,
|
||||
x if x > 10 => 1,
|
||||
x if x > 5 => 2,
|
||||
x if let 4 = 4 => {
|
||||
42;
|
||||
3
|
||||
}
|
||||
x => 4,
|
||||
}
|
||||
}"#,
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
@ -381,6 +381,18 @@ impl VariantData {
|
||||
)
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_if_let_with_match_let_chain() {
|
||||
check_assist_not_applicable(
|
||||
replace_if_let_with_match,
|
||||
r#"
|
||||
fn main() {
|
||||
if $0let true = true && let Some(1) = None {}
|
||||
}
|
||||
"#,
|
||||
)
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_if_let_with_match_basic() {
|
||||
check_assist(
|
||||
|
@ -289,17 +289,19 @@ fn expr() {
|
||||
TopEntryPoint::Expr,
|
||||
"let _ = 0;",
|
||||
expect![[r#"
|
||||
ERROR
|
||||
LET_KW "let"
|
||||
WHITESPACE " "
|
||||
UNDERSCORE "_"
|
||||
WHITESPACE " "
|
||||
EQ "="
|
||||
WHITESPACE " "
|
||||
INT_NUMBER "0"
|
||||
SEMICOLON ";"
|
||||
error 0: expected expression
|
||||
"#]],
|
||||
ERROR
|
||||
LET_EXPR
|
||||
LET_KW "let"
|
||||
WHITESPACE " "
|
||||
WILDCARD_PAT
|
||||
UNDERSCORE "_"
|
||||
WHITESPACE " "
|
||||
EQ "="
|
||||
WHITESPACE " "
|
||||
LITERAL
|
||||
INT_NUMBER "0"
|
||||
SEMICOLON ";"
|
||||
"#]],
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -29,9 +29,8 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
|
@ -1,5 +1,5 @@
|
||||
fn foo() {
|
||||
let foo =
|
||||
let foo = 11
|
||||
let bar = 1;
|
||||
let
|
||||
let baz = 92;
|
||||
|
@ -20,6 +20,9 @@ SOURCE_FILE
|
||||
IDENT "foo"
|
||||
WHITESPACE " "
|
||||
EQ "="
|
||||
WHITESPACE " "
|
||||
LITERAL
|
||||
INT_NUMBER "11"
|
||||
WHITESPACE "\n "
|
||||
LET_STMT
|
||||
LET_KW "let"
|
||||
@ -57,9 +60,8 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -73,9 +75,8 @@ SOURCE_FILE
|
||||
WHILE_EXPR
|
||||
WHILE_KW "while"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -95,13 +96,12 @@ SOURCE_FILE
|
||||
WHITESPACE "\n"
|
||||
R_CURLY "}"
|
||||
WHITESPACE "\n"
|
||||
error 24: expected expression
|
||||
error 24: expected SEMICOLON
|
||||
error 49: expected pattern
|
||||
error 49: expected SEMICOLON
|
||||
error 75: expected pattern
|
||||
error 75: expected SEMICOLON
|
||||
error 98: expected pattern
|
||||
error 98: expected SEMICOLON
|
||||
error 124: expected pattern
|
||||
error 124: expected SEMICOLON
|
||||
error 27: expected SEMICOLON
|
||||
error 52: expected pattern
|
||||
error 52: expected SEMICOLON
|
||||
error 78: expected pattern
|
||||
error 78: expected SEMICOLON
|
||||
error 101: expected pattern
|
||||
error 101: expected SEMICOLON
|
||||
error 127: expected pattern
|
||||
error 127: expected SEMICOLON
|
||||
|
@ -180,116 +180,118 @@ SOURCE_FILE
|
||||
ERROR
|
||||
PLUS "+"
|
||||
WHITESPACE " "
|
||||
EXPR_STMT
|
||||
TUPLE_EXPR
|
||||
L_PAREN "("
|
||||
FOR_EXPR
|
||||
FOR_KW "for"
|
||||
PATH_PAT
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
L_ANGLE "<"
|
||||
ERROR
|
||||
LIFETIME_IDENT "'a"
|
||||
R_ANGLE ">"
|
||||
WHITESPACE " "
|
||||
TUPLE_EXPR
|
||||
L_PAREN "("
|
||||
FOR_EXPR
|
||||
FOR_KW "for"
|
||||
PATH_PAT
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
L_ANGLE "<"
|
||||
ERROR
|
||||
LIFETIME_IDENT "'a"
|
||||
R_ANGLE ">"
|
||||
WHITESPACE " "
|
||||
BIN_EXPR
|
||||
BIN_EXPR
|
||||
BIN_EXPR
|
||||
BIN_EXPR
|
||||
BIN_EXPR
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "Trait"
|
||||
L_ANGLE "<"
|
||||
ERROR
|
||||
LIFETIME_IDENT "'a"
|
||||
R_ANGLE ">"
|
||||
ERROR
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
PLUS "+"
|
||||
WHITESPACE " "
|
||||
PAREN_EXPR
|
||||
L_PAREN "("
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "Copy"
|
||||
IDENT "Trait"
|
||||
L_ANGLE "<"
|
||||
ERROR
|
||||
LIFETIME_IDENT "'a"
|
||||
R_ANGLE ">"
|
||||
ERROR
|
||||
R_PAREN ")"
|
||||
R_ANGLE ">"
|
||||
ERROR
|
||||
SEMICOLON ";"
|
||||
WHITESPACE "\n "
|
||||
LET_STMT
|
||||
LET_KW "let"
|
||||
WHITESPACE " "
|
||||
PLUS "+"
|
||||
WHITESPACE " "
|
||||
PAREN_EXPR
|
||||
L_PAREN "("
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "Copy"
|
||||
R_PAREN ")"
|
||||
R_ANGLE ">"
|
||||
ERROR
|
||||
SEMICOLON ";"
|
||||
WHITESPACE "\n "
|
||||
LET_EXPR
|
||||
LET_KW "let"
|
||||
WHITESPACE " "
|
||||
WILDCARD_PAT
|
||||
UNDERSCORE "_"
|
||||
ERROR
|
||||
COLON ":"
|
||||
WHITESPACE " "
|
||||
WILDCARD_PAT
|
||||
UNDERSCORE "_"
|
||||
COLON ":"
|
||||
WHITESPACE " "
|
||||
DYN_TRAIT_TYPE
|
||||
TYPE_BOUND_LIST
|
||||
TYPE_BOUND
|
||||
PATH_TYPE
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "Box"
|
||||
GENERIC_ARG_LIST
|
||||
BIN_EXPR
|
||||
BIN_EXPR
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "Box"
|
||||
L_ANGLE "<"
|
||||
TUPLE_EXPR
|
||||
L_PAREN "("
|
||||
FOR_EXPR
|
||||
FOR_KW "for"
|
||||
PATH_PAT
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
L_ANGLE "<"
|
||||
TYPE_ARG
|
||||
PAREN_TYPE
|
||||
L_PAREN "("
|
||||
FOR_TYPE
|
||||
FOR_KW "for"
|
||||
GENERIC_PARAM_LIST
|
||||
L_ANGLE "<"
|
||||
LIFETIME_PARAM
|
||||
LIFETIME
|
||||
LIFETIME_IDENT "'a"
|
||||
R_ANGLE ">"
|
||||
WHITESPACE " "
|
||||
PATH_TYPE
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "Trait"
|
||||
GENERIC_ARG_LIST
|
||||
L_ANGLE "<"
|
||||
LIFETIME_ARG
|
||||
LIFETIME
|
||||
LIFETIME_IDENT "'a"
|
||||
R_ANGLE ">"
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
PLUS "+"
|
||||
WHITESPACE " "
|
||||
TYPE_BOUND
|
||||
L_PAREN "("
|
||||
PATH_TYPE
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "Copy"
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
PLUS "+"
|
||||
WHITESPACE " "
|
||||
TYPE_BOUND
|
||||
L_PAREN "("
|
||||
QUESTION "?"
|
||||
PATH_TYPE
|
||||
ERROR
|
||||
LIFETIME_IDENT "'a"
|
||||
R_ANGLE ">"
|
||||
WHITESPACE " "
|
||||
BIN_EXPR
|
||||
BIN_EXPR
|
||||
BIN_EXPR
|
||||
BIN_EXPR
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "Trait"
|
||||
L_ANGLE "<"
|
||||
ERROR
|
||||
LIFETIME_IDENT "'a"
|
||||
R_ANGLE ">"
|
||||
ERROR
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
PLUS "+"
|
||||
WHITESPACE " "
|
||||
PAREN_EXPR
|
||||
L_PAREN "("
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "Copy"
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
PLUS "+"
|
||||
WHITESPACE " "
|
||||
PAREN_EXPR
|
||||
L_PAREN "("
|
||||
ERROR
|
||||
QUESTION "?"
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "Sized"
|
||||
R_PAREN ")"
|
||||
ERROR
|
||||
R_ANGLE ">"
|
||||
SEMICOLON ";"
|
||||
R_ANGLE ">"
|
||||
ERROR
|
||||
SEMICOLON ";"
|
||||
WHITESPACE "\n"
|
||||
R_CURLY "}"
|
||||
WHITESPACE "\n"
|
||||
@ -312,10 +314,18 @@ error 168: expected expression
|
||||
error 179: expected expression
|
||||
error 180: expected a block
|
||||
error 180: expected COMMA
|
||||
error 180: expected expression
|
||||
error 180: expected R_PAREN
|
||||
error 180: expected SEMICOLON
|
||||
error 215: expected COMMA
|
||||
error 215: expected R_ANGLE
|
||||
error 235: expected SEMICOLON
|
||||
error 235: expected expression
|
||||
error 190: expected EQ
|
||||
error 190: expected expression
|
||||
error 191: expected COMMA
|
||||
error 201: expected type
|
||||
error 204: expected IN_KW
|
||||
error 211: expected expression
|
||||
error 214: expected expression
|
||||
error 228: expected expression
|
||||
error 229: expected R_PAREN
|
||||
error 229: expected a block
|
||||
error 229: expected COMMA
|
||||
error 236: expected expression
|
||||
error 237: expected COMMA
|
||||
error 237: expected expression
|
||||
error 237: expected R_PAREN
|
||||
|
@ -1,209 +0,0 @@
|
||||
SOURCE_FILE@0..197
|
||||
FN@0..37
|
||||
FN_KW@0..2 "fn"
|
||||
WHITESPACE@2..3 " "
|
||||
NAME@3..6
|
||||
IDENT@3..6 "foo"
|
||||
PARAM_LIST@6..8
|
||||
L_PAREN@6..7 "("
|
||||
R_PAREN@7..8 ")"
|
||||
WHITESPACE@8..9 " "
|
||||
BLOCK_EXPR@9..37
|
||||
STMT_LIST@9..37
|
||||
L_CURLY@9..10 "{"
|
||||
WHITESPACE@10..11 " "
|
||||
IF_EXPR@11..35
|
||||
IF_KW@11..13 "if"
|
||||
WHITESPACE@13..14 " "
|
||||
CONDITION@14..32
|
||||
LET_KW@14..17 "let"
|
||||
WHITESPACE@17..18 " "
|
||||
TUPLE_STRUCT_PAT@18..25
|
||||
PATH@18..22
|
||||
PATH_SEGMENT@18..22
|
||||
NAME_REF@18..22
|
||||
IDENT@18..22 "Some"
|
||||
L_PAREN@22..23 "("
|
||||
WILDCARD_PAT@23..24
|
||||
UNDERSCORE@23..24 "_"
|
||||
R_PAREN@24..25 ")"
|
||||
WHITESPACE@25..26 " "
|
||||
EQ@26..27 "="
|
||||
WHITESPACE@27..28 " "
|
||||
PATH_EXPR@28..32
|
||||
PATH@28..32
|
||||
PATH_SEGMENT@28..32
|
||||
NAME_REF@28..32
|
||||
IDENT@28..32 "None"
|
||||
WHITESPACE@32..33 " "
|
||||
BLOCK_EXPR@33..35
|
||||
STMT_LIST@33..35
|
||||
L_CURLY@33..34 "{"
|
||||
R_CURLY@34..35 "}"
|
||||
WHITESPACE@35..36 " "
|
||||
R_CURLY@36..37 "}"
|
||||
WHITESPACE@37..38 "\n"
|
||||
FN@38..196
|
||||
FN_KW@38..40 "fn"
|
||||
WHITESPACE@40..41 " "
|
||||
NAME@41..44
|
||||
IDENT@41..44 "bar"
|
||||
PARAM_LIST@44..46
|
||||
L_PAREN@44..45 "("
|
||||
R_PAREN@45..46 ")"
|
||||
WHITESPACE@46..47 " "
|
||||
BLOCK_EXPR@47..196
|
||||
STMT_LIST@47..196
|
||||
L_CURLY@47..48 "{"
|
||||
WHITESPACE@48..53 "\n "
|
||||
EXPR_STMT@53..87
|
||||
IF_EXPR@53..87
|
||||
IF_KW@53..55 "if"
|
||||
WHITESPACE@55..56 " "
|
||||
CONDITION@56..84
|
||||
LET_KW@56..59 "let"
|
||||
WHITESPACE@59..60 " "
|
||||
OR_PAT@60..77
|
||||
TUPLE_STRUCT_PAT@60..67
|
||||
PATH@60..64
|
||||
PATH_SEGMENT@60..64
|
||||
NAME_REF@60..64
|
||||
IDENT@60..64 "Some"
|
||||
L_PAREN@64..65 "("
|
||||
WILDCARD_PAT@65..66
|
||||
UNDERSCORE@65..66 "_"
|
||||
R_PAREN@66..67 ")"
|
||||
WHITESPACE@67..68 " "
|
||||
PIPE@68..69 "|"
|
||||
WHITESPACE@69..70 " "
|
||||
TUPLE_STRUCT_PAT@70..77
|
||||
PATH@70..74
|
||||
PATH_SEGMENT@70..74
|
||||
NAME_REF@70..74
|
||||
IDENT@70..74 "Some"
|
||||
L_PAREN@74..75 "("
|
||||
WILDCARD_PAT@75..76
|
||||
UNDERSCORE@75..76 "_"
|
||||
R_PAREN@76..77 ")"
|
||||
WHITESPACE@77..78 " "
|
||||
EQ@78..79 "="
|
||||
WHITESPACE@79..80 " "
|
||||
PATH_EXPR@80..84
|
||||
PATH@80..84
|
||||
PATH_SEGMENT@80..84
|
||||
NAME_REF@80..84
|
||||
IDENT@80..84 "None"
|
||||
WHITESPACE@84..85 " "
|
||||
BLOCK_EXPR@85..87
|
||||
STMT_LIST@85..87
|
||||
L_CURLY@85..86 "{"
|
||||
R_CURLY@86..87 "}"
|
||||
WHITESPACE@87..92 "\n "
|
||||
EXPR_STMT@92..118
|
||||
IF_EXPR@92..118
|
||||
IF_KW@92..94 "if"
|
||||
WHITESPACE@94..95 " "
|
||||
CONDITION@95..115
|
||||
LET_KW@95..98 "let"
|
||||
WHITESPACE@98..99 " "
|
||||
PIPE@99..100 "|"
|
||||
WHITESPACE@100..101 " "
|
||||
TUPLE_STRUCT_PAT@101..108
|
||||
PATH@101..105
|
||||
PATH_SEGMENT@101..105
|
||||
NAME_REF@101..105
|
||||
IDENT@101..105 "Some"
|
||||
L_PAREN@105..106 "("
|
||||
WILDCARD_PAT@106..107
|
||||
UNDERSCORE@106..107 "_"
|
||||
R_PAREN@107..108 ")"
|
||||
WHITESPACE@108..109 " "
|
||||
EQ@109..110 "="
|
||||
WHITESPACE@110..111 " "
|
||||
PATH_EXPR@111..115
|
||||
PATH@111..115
|
||||
PATH_SEGMENT@111..115
|
||||
NAME_REF@111..115
|
||||
IDENT@111..115 "None"
|
||||
WHITESPACE@115..116 " "
|
||||
BLOCK_EXPR@116..118
|
||||
STMT_LIST@116..118
|
||||
L_CURLY@116..117 "{"
|
||||
R_CURLY@117..118 "}"
|
||||
WHITESPACE@118..123 "\n "
|
||||
EXPR_STMT@123..160
|
||||
WHILE_EXPR@123..160
|
||||
WHILE_KW@123..128 "while"
|
||||
WHITESPACE@128..129 " "
|
||||
CONDITION@129..157
|
||||
LET_KW@129..132 "let"
|
||||
WHITESPACE@132..133 " "
|
||||
OR_PAT@133..150
|
||||
TUPLE_STRUCT_PAT@133..140
|
||||
PATH@133..137
|
||||
PATH_SEGMENT@133..137
|
||||
NAME_REF@133..137
|
||||
IDENT@133..137 "Some"
|
||||
L_PAREN@137..138 "("
|
||||
WILDCARD_PAT@138..139
|
||||
UNDERSCORE@138..139 "_"
|
||||
R_PAREN@139..140 ")"
|
||||
WHITESPACE@140..141 " "
|
||||
PIPE@141..142 "|"
|
||||
WHITESPACE@142..143 " "
|
||||
TUPLE_STRUCT_PAT@143..150
|
||||
PATH@143..147
|
||||
PATH_SEGMENT@143..147
|
||||
NAME_REF@143..147
|
||||
IDENT@143..147 "Some"
|
||||
L_PAREN@147..148 "("
|
||||
WILDCARD_PAT@148..149
|
||||
UNDERSCORE@148..149 "_"
|
||||
R_PAREN@149..150 ")"
|
||||
WHITESPACE@150..151 " "
|
||||
EQ@151..152 "="
|
||||
WHITESPACE@152..153 " "
|
||||
PATH_EXPR@153..157
|
||||
PATH@153..157
|
||||
PATH_SEGMENT@153..157
|
||||
NAME_REF@153..157
|
||||
IDENT@153..157 "None"
|
||||
WHITESPACE@157..158 " "
|
||||
BLOCK_EXPR@158..160
|
||||
STMT_LIST@158..160
|
||||
L_CURLY@158..159 "{"
|
||||
R_CURLY@159..160 "}"
|
||||
WHITESPACE@160..165 "\n "
|
||||
WHILE_EXPR@165..194
|
||||
WHILE_KW@165..170 "while"
|
||||
WHITESPACE@170..171 " "
|
||||
CONDITION@171..191
|
||||
LET_KW@171..174 "let"
|
||||
WHITESPACE@174..175 " "
|
||||
PIPE@175..176 "|"
|
||||
WHITESPACE@176..177 " "
|
||||
TUPLE_STRUCT_PAT@177..184
|
||||
PATH@177..181
|
||||
PATH_SEGMENT@177..181
|
||||
NAME_REF@177..181
|
||||
IDENT@177..181 "Some"
|
||||
L_PAREN@181..182 "("
|
||||
WILDCARD_PAT@182..183
|
||||
UNDERSCORE@182..183 "_"
|
||||
R_PAREN@183..184 ")"
|
||||
WHITESPACE@184..185 " "
|
||||
EQ@185..186 "="
|
||||
WHITESPACE@186..187 " "
|
||||
PATH_EXPR@187..191
|
||||
PATH@187..191
|
||||
PATH_SEGMENT@187..191
|
||||
NAME_REF@187..191
|
||||
IDENT@187..191 "None"
|
||||
WHITESPACE@191..192 " "
|
||||
BLOCK_EXPR@192..194
|
||||
STMT_LIST@192..194
|
||||
L_CURLY@192..193 "{"
|
||||
R_CURLY@193..194 "}"
|
||||
WHITESPACE@194..195 "\n"
|
||||
R_CURLY@195..196 "}"
|
||||
WHITESPACE@196..197 "\n"
|
@ -1,7 +0,0 @@
|
||||
fn foo() { if let Some(_) = None {} }
|
||||
fn bar() {
|
||||
if let Some(_) | Some(_) = None {}
|
||||
if let | Some(_) = None {}
|
||||
while let Some(_) | Some(_) = None {}
|
||||
while let | Some(_) = None {}
|
||||
}
|
@ -1,209 +0,0 @@
|
||||
SOURCE_FILE
|
||||
FN
|
||||
FN_KW "fn"
|
||||
WHITESPACE " "
|
||||
NAME
|
||||
IDENT "foo"
|
||||
PARAM_LIST
|
||||
L_PAREN "("
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
L_CURLY "{"
|
||||
WHITESPACE " "
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
LET_KW "let"
|
||||
WHITESPACE " "
|
||||
TUPLE_STRUCT_PAT
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "Some"
|
||||
L_PAREN "("
|
||||
WILDCARD_PAT
|
||||
UNDERSCORE "_"
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
EQ "="
|
||||
WHITESPACE " "
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "None"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
L_CURLY "{"
|
||||
R_CURLY "}"
|
||||
WHITESPACE " "
|
||||
R_CURLY "}"
|
||||
WHITESPACE "\n"
|
||||
FN
|
||||
FN_KW "fn"
|
||||
WHITESPACE " "
|
||||
NAME
|
||||
IDENT "bar"
|
||||
PARAM_LIST
|
||||
L_PAREN "("
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
L_CURLY "{"
|
||||
WHITESPACE "\n "
|
||||
EXPR_STMT
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
LET_KW "let"
|
||||
WHITESPACE " "
|
||||
OR_PAT
|
||||
TUPLE_STRUCT_PAT
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "Some"
|
||||
L_PAREN "("
|
||||
WILDCARD_PAT
|
||||
UNDERSCORE "_"
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
PIPE "|"
|
||||
WHITESPACE " "
|
||||
TUPLE_STRUCT_PAT
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "Some"
|
||||
L_PAREN "("
|
||||
WILDCARD_PAT
|
||||
UNDERSCORE "_"
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
EQ "="
|
||||
WHITESPACE " "
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "None"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
L_CURLY "{"
|
||||
R_CURLY "}"
|
||||
WHITESPACE "\n "
|
||||
EXPR_STMT
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
LET_KW "let"
|
||||
WHITESPACE " "
|
||||
PIPE "|"
|
||||
WHITESPACE " "
|
||||
TUPLE_STRUCT_PAT
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "Some"
|
||||
L_PAREN "("
|
||||
WILDCARD_PAT
|
||||
UNDERSCORE "_"
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
EQ "="
|
||||
WHITESPACE " "
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "None"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
L_CURLY "{"
|
||||
R_CURLY "}"
|
||||
WHITESPACE "\n "
|
||||
EXPR_STMT
|
||||
WHILE_EXPR
|
||||
WHILE_KW "while"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
LET_KW "let"
|
||||
WHITESPACE " "
|
||||
OR_PAT
|
||||
TUPLE_STRUCT_PAT
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "Some"
|
||||
L_PAREN "("
|
||||
WILDCARD_PAT
|
||||
UNDERSCORE "_"
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
PIPE "|"
|
||||
WHITESPACE " "
|
||||
TUPLE_STRUCT_PAT
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "Some"
|
||||
L_PAREN "("
|
||||
WILDCARD_PAT
|
||||
UNDERSCORE "_"
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
EQ "="
|
||||
WHITESPACE " "
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "None"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
L_CURLY "{"
|
||||
R_CURLY "}"
|
||||
WHITESPACE "\n "
|
||||
WHILE_EXPR
|
||||
WHILE_KW "while"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
LET_KW "let"
|
||||
WHITESPACE " "
|
||||
PIPE "|"
|
||||
WHITESPACE " "
|
||||
TUPLE_STRUCT_PAT
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "Some"
|
||||
L_PAREN "("
|
||||
WILDCARD_PAT
|
||||
UNDERSCORE "_"
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
EQ "="
|
||||
WHITESPACE " "
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "None"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
L_CURLY "{"
|
||||
R_CURLY "}"
|
||||
WHITESPACE "\n"
|
||||
R_CURLY "}"
|
||||
WHITESPACE "\n"
|
90
crates/parser/test_data/parser/inline/ok/0030_let_expr.rast
Normal file
90
crates/parser/test_data/parser/inline/ok/0030_let_expr.rast
Normal file
@ -0,0 +1,90 @@
|
||||
SOURCE_FILE
|
||||
FN
|
||||
FN_KW "fn"
|
||||
WHITESPACE " "
|
||||
NAME
|
||||
IDENT "foo"
|
||||
PARAM_LIST
|
||||
L_PAREN "("
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
L_CURLY "{"
|
||||
WHITESPACE "\n "
|
||||
EXPR_STMT
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
BIN_EXPR
|
||||
LET_EXPR
|
||||
LET_KW "let"
|
||||
WHITESPACE " "
|
||||
TUPLE_STRUCT_PAT
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "Some"
|
||||
L_PAREN "("
|
||||
WILDCARD_PAT
|
||||
UNDERSCORE "_"
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
EQ "="
|
||||
WHITESPACE " "
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "None"
|
||||
WHITESPACE " "
|
||||
AMP2 "&&"
|
||||
WHITESPACE " "
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
L_CURLY "{"
|
||||
R_CURLY "}"
|
||||
WHITESPACE "\n "
|
||||
WHILE_EXPR
|
||||
WHILE_KW "while"
|
||||
WHITESPACE " "
|
||||
BIN_EXPR
|
||||
BIN_EXPR
|
||||
LITERAL
|
||||
INT_NUMBER "1"
|
||||
WHITESPACE " "
|
||||
EQ2 "=="
|
||||
WHITESPACE " "
|
||||
LITERAL
|
||||
INT_NUMBER "5"
|
||||
WHITESPACE " "
|
||||
AMP2 "&&"
|
||||
WHITESPACE " "
|
||||
PAREN_EXPR
|
||||
L_PAREN "("
|
||||
LET_EXPR
|
||||
LET_KW "let"
|
||||
WHITESPACE " "
|
||||
IDENT_PAT
|
||||
NAME
|
||||
IDENT "None"
|
||||
WHITESPACE " "
|
||||
EQ "="
|
||||
WHITESPACE " "
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "None"
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
L_CURLY "{"
|
||||
R_CURLY "}"
|
||||
WHITESPACE "\n"
|
||||
R_CURLY "}"
|
||||
WHITESPACE "\n"
|
@ -0,0 +1,4 @@
|
||||
fn foo() {
|
||||
if let Some(_) = None && true {}
|
||||
while 1 == 5 && (let None = None) {}
|
||||
}
|
90
crates/parser/test_data/parser/inline/ok/0030_let_expr.txt
Normal file
90
crates/parser/test_data/parser/inline/ok/0030_let_expr.txt
Normal file
@ -0,0 +1,90 @@
|
||||
SOURCE_FILE
|
||||
FN
|
||||
FN_KW "fn"
|
||||
WHITESPACE " "
|
||||
NAME
|
||||
IDENT "foo"
|
||||
PARAM_LIST
|
||||
L_PAREN "("
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
L_CURLY "{"
|
||||
WHITESPACE "\n "
|
||||
EXPR_STMT
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
BIN_EXPR
|
||||
LET_EXPR
|
||||
LET_KW "let"
|
||||
WHITESPACE " "
|
||||
TUPLE_STRUCT_PAT
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "Some"
|
||||
L_PAREN "("
|
||||
WILDCARD_PAT
|
||||
UNDERSCORE "_"
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
EQ "="
|
||||
WHITESPACE " "
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "None"
|
||||
WHITESPACE " "
|
||||
AMP2 "&&"
|
||||
WHITESPACE " "
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
L_CURLY "{"
|
||||
R_CURLY "}"
|
||||
WHITESPACE "\n "
|
||||
WHILE_EXPR
|
||||
WHILE_KW "while"
|
||||
WHITESPACE " "
|
||||
BIN_EXPR
|
||||
BIN_EXPR
|
||||
LITERAL
|
||||
INT_NUMBER "1"
|
||||
WHITESPACE " "
|
||||
EQ2 "=="
|
||||
WHITESPACE " "
|
||||
LITERAL
|
||||
INT_NUMBER "5"
|
||||
WHITESPACE " "
|
||||
AMP2 "&&"
|
||||
WHITESPACE " "
|
||||
PAREN_EXPR
|
||||
L_PAREN "("
|
||||
LET_EXPR
|
||||
LET_KW "let"
|
||||
WHITESPACE " "
|
||||
IDENT_PAT
|
||||
NAME
|
||||
IDENT "None"
|
||||
WHITESPACE " "
|
||||
EQ "="
|
||||
WHITESPACE " "
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "None"
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
L_CURLY "{"
|
||||
R_CURLY "}"
|
||||
WHITESPACE "\n"
|
||||
R_CURLY "}"
|
||||
WHITESPACE "\n"
|
@ -16,9 +16,8 @@ SOURCE_FILE
|
||||
WHILE_EXPR
|
||||
WHILE_KW "while"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -30,7 +29,7 @@ SOURCE_FILE
|
||||
WHILE_EXPR
|
||||
WHILE_KW "while"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
LET_EXPR
|
||||
LET_KW "let"
|
||||
WHITESPACE " "
|
||||
TUPLE_STRUCT_PAT
|
||||
@ -69,15 +68,14 @@ SOURCE_FILE
|
||||
WHILE_EXPR
|
||||
WHILE_KW "while"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
L_CURLY "{"
|
||||
WHITESPACE " "
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
WHITESPACE " "
|
||||
R_CURLY "}"
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
L_CURLY "{"
|
||||
WHITESPACE " "
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
WHITESPACE " "
|
||||
R_CURLY "}"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
|
@ -16,9 +16,8 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -30,9 +29,8 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -51,9 +49,8 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -65,9 +62,8 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
LITERAL
|
||||
FALSE_KW "false"
|
||||
LITERAL
|
||||
FALSE_KW "false"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -86,12 +82,11 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "S"
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "S"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -103,15 +98,14 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
L_CURLY "{"
|
||||
WHITESPACE " "
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
WHITESPACE " "
|
||||
R_CURLY "}"
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
L_CURLY "{"
|
||||
WHITESPACE " "
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
WHITESPACE " "
|
||||
R_CURLY "}"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
|
@ -15,9 +15,8 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
BREAK_EXPR
|
||||
BREAK_KW "break"
|
||||
BREAK_EXPR
|
||||
BREAK_KW "break"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -28,9 +27,8 @@ SOURCE_FILE
|
||||
WHILE_EXPR
|
||||
WHILE_KW "while"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
BREAK_EXPR
|
||||
BREAK_KW "break"
|
||||
BREAK_EXPR
|
||||
BREAK_KW "break"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
|
@ -16,9 +16,8 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -50,9 +49,8 @@ SOURCE_FILE
|
||||
WHILE_EXPR
|
||||
WHILE_KW "while"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
|
@ -35,9 +35,8 @@ SOURCE_FILE
|
||||
WHITESPACE " "
|
||||
WHILE_KW "while"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
|
@ -49,19 +49,20 @@ SOURCE_FILE
|
||||
MATCH_GUARD
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
LET_KW "let"
|
||||
WHITESPACE " "
|
||||
IDENT_PAT
|
||||
NAME
|
||||
IDENT "foo"
|
||||
WHITESPACE " "
|
||||
EQ "="
|
||||
WHITESPACE " "
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "bar"
|
||||
LET_EXPR
|
||||
LET_KW "let"
|
||||
WHITESPACE " "
|
||||
IDENT_PAT
|
||||
NAME
|
||||
IDENT "foo"
|
||||
WHITESPACE " "
|
||||
EQ "="
|
||||
WHITESPACE " "
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "bar"
|
||||
WHITESPACE " "
|
||||
FAT_ARROW "=>"
|
||||
WHITESPACE " "
|
||||
|
@ -51,16 +51,15 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
CALL_EXPR
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "condition_not_met"
|
||||
ARG_LIST
|
||||
L_PAREN "("
|
||||
R_PAREN ")"
|
||||
CALL_EXPR
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "condition_not_met"
|
||||
ARG_LIST
|
||||
L_PAREN "("
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -92,16 +91,15 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
CALL_EXPR
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "condition_not_met"
|
||||
ARG_LIST
|
||||
L_PAREN "("
|
||||
R_PAREN ")"
|
||||
CALL_EXPR
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "condition_not_met"
|
||||
ARG_LIST
|
||||
L_PAREN "("
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -153,16 +151,15 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
CALL_EXPR
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "foo"
|
||||
ARG_LIST
|
||||
L_PAREN "("
|
||||
R_PAREN ")"
|
||||
CALL_EXPR
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "foo"
|
||||
ARG_LIST
|
||||
L_PAREN "("
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -187,16 +184,15 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
CALL_EXPR
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "bar"
|
||||
ARG_LIST
|
||||
L_PAREN "("
|
||||
R_PAREN ")"
|
||||
CALL_EXPR
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "bar"
|
||||
ARG_LIST
|
||||
L_PAREN "("
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
|
@ -280,21 +280,20 @@ SOURCE_FILE
|
||||
WHILE_EXPR
|
||||
WHILE_KW "while"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
PREFIX_EXPR
|
||||
BANG "!"
|
||||
METHOD_CALL_EXPR
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "x"
|
||||
DOT "."
|
||||
NAME_REF
|
||||
IDENT "get"
|
||||
ARG_LIST
|
||||
L_PAREN "("
|
||||
R_PAREN ")"
|
||||
PREFIX_EXPR
|
||||
BANG "!"
|
||||
METHOD_CALL_EXPR
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "x"
|
||||
DOT "."
|
||||
NAME_REF
|
||||
IDENT "get"
|
||||
ARG_LIST
|
||||
L_PAREN "("
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -443,12 +442,11 @@ SOURCE_FILE
|
||||
WHILE_EXPR
|
||||
WHILE_KW "while"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
PAREN_EXPR
|
||||
L_PAREN "("
|
||||
RETURN_EXPR
|
||||
RETURN_KW "return"
|
||||
R_PAREN ")"
|
||||
PAREN_EXPR
|
||||
L_PAREN "("
|
||||
RETURN_EXPR
|
||||
RETURN_KW "return"
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -457,12 +455,11 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
PAREN_EXPR
|
||||
L_PAREN "("
|
||||
RETURN_EXPR
|
||||
RETURN_KW "return"
|
||||
R_PAREN ")"
|
||||
PAREN_EXPR
|
||||
L_PAREN "("
|
||||
RETURN_EXPR
|
||||
RETURN_KW "return"
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -495,12 +492,11 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
PAREN_EXPR
|
||||
L_PAREN "("
|
||||
RETURN_EXPR
|
||||
RETURN_KW "return"
|
||||
R_PAREN ")"
|
||||
PAREN_EXPR
|
||||
L_PAREN "("
|
||||
RETURN_EXPR
|
||||
RETURN_KW "return"
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -549,12 +545,11 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
PAREN_EXPR
|
||||
L_PAREN "("
|
||||
RETURN_EXPR
|
||||
RETURN_KW "return"
|
||||
R_PAREN ")"
|
||||
PAREN_EXPR
|
||||
L_PAREN "("
|
||||
RETURN_EXPR
|
||||
RETURN_KW "return"
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -572,12 +567,11 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
PAREN_EXPR
|
||||
L_PAREN "("
|
||||
RETURN_EXPR
|
||||
RETURN_KW "return"
|
||||
R_PAREN ")"
|
||||
PAREN_EXPR
|
||||
L_PAREN "("
|
||||
RETURN_EXPR
|
||||
RETURN_KW "return"
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -1037,9 +1031,8 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
BREAK_EXPR
|
||||
BREAK_KW "break"
|
||||
BREAK_EXPR
|
||||
BREAK_KW "break"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -1089,18 +1082,17 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
BIN_EXPR
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "i"
|
||||
WHITESPACE " "
|
||||
EQ2 "=="
|
||||
WHITESPACE " "
|
||||
LITERAL
|
||||
INT_NUMBER "1"
|
||||
BIN_EXPR
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "i"
|
||||
WHITESPACE " "
|
||||
EQ2 "=="
|
||||
WHITESPACE " "
|
||||
LITERAL
|
||||
INT_NUMBER "1"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
@ -1344,18 +1336,17 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
BIN_EXPR
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "u8"
|
||||
WHITESPACE " "
|
||||
NEQ "!="
|
||||
WHITESPACE " "
|
||||
LITERAL
|
||||
INT_NUMBER "0u8"
|
||||
BIN_EXPR
|
||||
PATH_EXPR
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "u8"
|
||||
WHITESPACE " "
|
||||
NEQ "!="
|
||||
WHITESPACE " "
|
||||
LITERAL
|
||||
INT_NUMBER "0u8"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
|
@ -219,7 +219,7 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
LET_EXPR
|
||||
LET_KW "let"
|
||||
WHITESPACE " "
|
||||
TUPLE_STRUCT_PAT
|
||||
|
@ -15,47 +15,46 @@ SOURCE_FILE
|
||||
IF_EXPR
|
||||
IF_KW "if"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
BIN_EXPR
|
||||
CAST_EXPR
|
||||
METHOD_CALL_EXPR
|
||||
LITERAL
|
||||
FLOAT_NUMBER "1.0f32"
|
||||
DOT "."
|
||||
NAME_REF
|
||||
IDENT "floor"
|
||||
ARG_LIST
|
||||
L_PAREN "("
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
AS_KW "as"
|
||||
WHITESPACE " "
|
||||
PATH_TYPE
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "i64"
|
||||
BIN_EXPR
|
||||
CAST_EXPR
|
||||
METHOD_CALL_EXPR
|
||||
LITERAL
|
||||
FLOAT_NUMBER "1.0f32"
|
||||
DOT "."
|
||||
NAME_REF
|
||||
IDENT "floor"
|
||||
ARG_LIST
|
||||
L_PAREN "("
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
NEQ "!="
|
||||
AS_KW "as"
|
||||
WHITESPACE " "
|
||||
CAST_EXPR
|
||||
METHOD_CALL_EXPR
|
||||
LITERAL
|
||||
FLOAT_NUMBER "1.0f32"
|
||||
DOT "."
|
||||
NAME_REF
|
||||
IDENT "floor"
|
||||
ARG_LIST
|
||||
L_PAREN "("
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
AS_KW "as"
|
||||
WHITESPACE " "
|
||||
PATH_TYPE
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "i64"
|
||||
PATH_TYPE
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "i64"
|
||||
WHITESPACE " "
|
||||
NEQ "!="
|
||||
WHITESPACE " "
|
||||
CAST_EXPR
|
||||
METHOD_CALL_EXPR
|
||||
LITERAL
|
||||
FLOAT_NUMBER "1.0f32"
|
||||
DOT "."
|
||||
NAME_REF
|
||||
IDENT "floor"
|
||||
ARG_LIST
|
||||
L_PAREN "("
|
||||
R_PAREN ")"
|
||||
WHITESPACE " "
|
||||
AS_KW "as"
|
||||
WHITESPACE " "
|
||||
PATH_TYPE
|
||||
PATH
|
||||
PATH_SEGMENT
|
||||
NAME_REF
|
||||
IDENT "i64"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
|
@ -86,9 +86,8 @@ SOURCE_FILE
|
||||
WHILE_EXPR
|
||||
WHILE_KW "while"
|
||||
WHITESPACE " "
|
||||
CONDITION
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
LITERAL
|
||||
TRUE_KW "true"
|
||||
WHITESPACE " "
|
||||
BLOCK_EXPR
|
||||
STMT_LIST
|
||||
|
@ -49,9 +49,8 @@ SOURCE_FILE@0..350
|
||||
IF_EXPR@134..257
|
||||
IF_KW@134..136 "if"
|
||||
WHITESPACE@136..137 " "
|
||||
CONDITION@137..141
|
||||
LITERAL@137..141
|
||||
TRUE_KW@137..141 "true"
|
||||
LITERAL@137..141
|
||||
TRUE_KW@137..141 "true"
|
||||
WHITESPACE@141..142 " "
|
||||
BLOCK_EXPR@142..257
|
||||
STMT_LIST@142..257
|
||||
@ -94,9 +93,8 @@ SOURCE_FILE@0..350
|
||||
WHILE_EXPR@262..347
|
||||
WHILE_KW@262..267 "while"
|
||||
WHITESPACE@267..268 " "
|
||||
CONDITION@268..272
|
||||
LITERAL@268..272
|
||||
TRUE_KW@268..272 "true"
|
||||
LITERAL@268..272
|
||||
TRUE_KW@268..272 "true"
|
||||
WHITESPACE@272..273 " "
|
||||
BLOCK_EXPR@273..347
|
||||
STMT_LIST@273..347
|
||||
|
Loading…
x
Reference in New Issue
Block a user