mirror of
https://github.com/rust-lang/rust.git
synced 2025-02-04 19:12:50 +00:00
block expr
This commit is contained in:
parent
490f8ba5b7
commit
53485030dc
@ -139,7 +139,7 @@ Grammar(
|
|||||||
"STRUCT_LIT_FIELD",
|
"STRUCT_LIT_FIELD",
|
||||||
"IF_EXPR",
|
"IF_EXPR",
|
||||||
|
|
||||||
"EXTERN_BLOCK",
|
"EXTERN_BLOCK_EXPR",
|
||||||
"ENUM_VARIANT",
|
"ENUM_VARIANT",
|
||||||
"NAMED_FIELD",
|
"NAMED_FIELD",
|
||||||
"POS_FIELD",
|
"POS_FIELD",
|
||||||
@ -155,7 +155,7 @@ Grammar(
|
|||||||
"ABI",
|
"ABI",
|
||||||
"NAME",
|
"NAME",
|
||||||
"NAME_REF",
|
"NAME_REF",
|
||||||
"BLOCK",
|
"BLOCK_EXPR",
|
||||||
|
|
||||||
"LET_STMT",
|
"LET_STMT",
|
||||||
"EXPR_STMT",
|
"EXPR_STMT",
|
||||||
|
@ -53,31 +53,9 @@ pub(super) fn expr(p: &mut Parser) {
|
|||||||
pub(super) fn block(p: &mut Parser) {
|
pub(super) fn block(p: &mut Parser) {
|
||||||
if !p.at(L_CURLY) {
|
if !p.at(L_CURLY) {
|
||||||
p.error("expected block");
|
p.error("expected block");
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
let m = p.start();
|
block_expr(p);
|
||||||
p.bump();
|
|
||||||
while !p.at(EOF) && !p.at(R_CURLY) {
|
|
||||||
match p.current() {
|
|
||||||
LET_KW => let_stmt(p),
|
|
||||||
c => {
|
|
||||||
// test block_items
|
|
||||||
// fn a() { fn b() {} }
|
|
||||||
if items::ITEM_FIRST.contains(c) {
|
|
||||||
items::item(p)
|
|
||||||
} else {
|
|
||||||
let expr_stmt = p.start();
|
|
||||||
expressions::expr(p);
|
|
||||||
if p.eat(SEMI) {
|
|
||||||
expr_stmt.complete(p, EXPR_STMT);
|
|
||||||
} else {
|
|
||||||
expr_stmt.abandon(p);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
p.expect(R_CURLY);
|
|
||||||
m.complete(p, BLOCK);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// test let_stmt;
|
// test let_stmt;
|
||||||
@ -158,12 +136,14 @@ fn atom_expr(p: &mut Parser) -> Option<CompletedMarker> {
|
|||||||
if paths::is_path_start(p) {
|
if paths::is_path_start(p) {
|
||||||
return Some(path_expr(p));
|
return Some(path_expr(p));
|
||||||
}
|
}
|
||||||
|
let la = p.nth(1);
|
||||||
let done = match p.current() {
|
let done = match p.current() {
|
||||||
L_PAREN => tuple_expr(p),
|
L_PAREN => tuple_expr(p),
|
||||||
PIPE => lambda_expr(p),
|
PIPE => lambda_expr(p),
|
||||||
MOVE_KW if p.nth(1) == PIPE => lambda_expr(p),
|
MOVE_KW if la == PIPE => lambda_expr(p),
|
||||||
IF_KW => if_expr(p),
|
IF_KW => if_expr(p),
|
||||||
|
UNSAFE_KW if la == L_CURLY => block_expr(p),
|
||||||
|
L_CURLY => block_expr(p),
|
||||||
_ => {
|
_ => {
|
||||||
p.err_and_bump("expected expression");
|
p.err_and_bump("expected expression");
|
||||||
return None;
|
return None;
|
||||||
@ -223,6 +203,40 @@ fn if_expr(p: &mut Parser) -> CompletedMarker {
|
|||||||
m.complete(p, IF_EXPR)
|
m.complete(p, IF_EXPR)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// test block_expr
|
||||||
|
// fn foo() {
|
||||||
|
// {};
|
||||||
|
// unsafe {};
|
||||||
|
// }
|
||||||
|
fn block_expr(p: &mut Parser) -> CompletedMarker {
|
||||||
|
assert!(p.at(L_CURLY) || p.at(UNSAFE_KW) && p.nth(1) == L_CURLY);
|
||||||
|
let m = p.start();
|
||||||
|
p.eat(UNSAFE_KW);
|
||||||
|
p.bump();
|
||||||
|
while !p.at(EOF) && !p.at(R_CURLY) {
|
||||||
|
match p.current() {
|
||||||
|
LET_KW => let_stmt(p),
|
||||||
|
c => {
|
||||||
|
// test block_items
|
||||||
|
// fn a() { fn b() {} }
|
||||||
|
if items::ITEM_FIRST.contains(c) {
|
||||||
|
items::item(p)
|
||||||
|
} else {
|
||||||
|
let expr_stmt = p.start();
|
||||||
|
expressions::expr(p);
|
||||||
|
if p.eat(SEMI) {
|
||||||
|
expr_stmt.complete(p, EXPR_STMT);
|
||||||
|
} else {
|
||||||
|
expr_stmt.abandon(p);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
p.expect(R_CURLY);
|
||||||
|
m.complete(p, BLOCK_EXPR)
|
||||||
|
}
|
||||||
|
|
||||||
// test call_expr
|
// test call_expr
|
||||||
// fn foo() {
|
// fn foo() {
|
||||||
// let _ = f();
|
// let _ = f();
|
||||||
|
@ -44,7 +44,7 @@ pub(super) fn item(p: &mut Parser) {
|
|||||||
// extern {}
|
// extern {}
|
||||||
L_CURLY => {
|
L_CURLY => {
|
||||||
extern_block(p);
|
extern_block(p);
|
||||||
EXTERN_BLOCK
|
EXTERN_BLOCK_EXPR
|
||||||
}
|
}
|
||||||
// test extern_struct
|
// test extern_struct
|
||||||
// extern struct Foo;
|
// extern struct Foo;
|
||||||
|
@ -45,6 +45,7 @@ pub use {
|
|||||||
yellow::{SyntaxNode, SyntaxNodeRef, SyntaxRoot, TreeRoot},
|
yellow::{SyntaxNode, SyntaxNodeRef, SyntaxRoot, TreeRoot},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
pub fn parse(text: &str) -> SyntaxNode {
|
pub fn parse(text: &str) -> SyntaxNode {
|
||||||
let tokens = tokenize(&text);
|
let tokens = tokenize(&text);
|
||||||
parser_impl::parse::<yellow::GreenBuilder>(text, &tokens)
|
parser_impl::parse::<yellow::GreenBuilder>(text, &tokens)
|
||||||
|
@ -129,7 +129,7 @@ pub enum SyntaxKind {
|
|||||||
STRUCT_LIT,
|
STRUCT_LIT,
|
||||||
STRUCT_LIT_FIELD,
|
STRUCT_LIT_FIELD,
|
||||||
IF_EXPR,
|
IF_EXPR,
|
||||||
EXTERN_BLOCK,
|
EXTERN_BLOCK_EXPR,
|
||||||
ENUM_VARIANT,
|
ENUM_VARIANT,
|
||||||
NAMED_FIELD,
|
NAMED_FIELD,
|
||||||
POS_FIELD,
|
POS_FIELD,
|
||||||
@ -145,7 +145,7 @@ pub enum SyntaxKind {
|
|||||||
ABI,
|
ABI,
|
||||||
NAME,
|
NAME,
|
||||||
NAME_REF,
|
NAME_REF,
|
||||||
BLOCK,
|
BLOCK_EXPR,
|
||||||
LET_STMT,
|
LET_STMT,
|
||||||
EXPR_STMT,
|
EXPR_STMT,
|
||||||
TYPE_PARAM_LIST,
|
TYPE_PARAM_LIST,
|
||||||
@ -336,7 +336,7 @@ impl SyntaxKind {
|
|||||||
STRUCT_LIT => &SyntaxInfo { name: "STRUCT_LIT" },
|
STRUCT_LIT => &SyntaxInfo { name: "STRUCT_LIT" },
|
||||||
STRUCT_LIT_FIELD => &SyntaxInfo { name: "STRUCT_LIT_FIELD" },
|
STRUCT_LIT_FIELD => &SyntaxInfo { name: "STRUCT_LIT_FIELD" },
|
||||||
IF_EXPR => &SyntaxInfo { name: "IF_EXPR" },
|
IF_EXPR => &SyntaxInfo { name: "IF_EXPR" },
|
||||||
EXTERN_BLOCK => &SyntaxInfo { name: "EXTERN_BLOCK" },
|
EXTERN_BLOCK_EXPR => &SyntaxInfo { name: "EXTERN_BLOCK_EXPR" },
|
||||||
ENUM_VARIANT => &SyntaxInfo { name: "ENUM_VARIANT" },
|
ENUM_VARIANT => &SyntaxInfo { name: "ENUM_VARIANT" },
|
||||||
NAMED_FIELD => &SyntaxInfo { name: "NAMED_FIELD" },
|
NAMED_FIELD => &SyntaxInfo { name: "NAMED_FIELD" },
|
||||||
POS_FIELD => &SyntaxInfo { name: "POS_FIELD" },
|
POS_FIELD => &SyntaxInfo { name: "POS_FIELD" },
|
||||||
@ -352,7 +352,7 @@ impl SyntaxKind {
|
|||||||
ABI => &SyntaxInfo { name: "ABI" },
|
ABI => &SyntaxInfo { name: "ABI" },
|
||||||
NAME => &SyntaxInfo { name: "NAME" },
|
NAME => &SyntaxInfo { name: "NAME" },
|
||||||
NAME_REF => &SyntaxInfo { name: "NAME_REF" },
|
NAME_REF => &SyntaxInfo { name: "NAME_REF" },
|
||||||
BLOCK => &SyntaxInfo { name: "BLOCK" },
|
BLOCK_EXPR => &SyntaxInfo { name: "BLOCK_EXPR" },
|
||||||
LET_STMT => &SyntaxInfo { name: "LET_STMT" },
|
LET_STMT => &SyntaxInfo { name: "LET_STMT" },
|
||||||
EXPR_STMT => &SyntaxInfo { name: "EXPR_STMT" },
|
EXPR_STMT => &SyntaxInfo { name: "EXPR_STMT" },
|
||||||
TYPE_PARAM_LIST => &SyntaxInfo { name: "TYPE_PARAM_LIST" },
|
TYPE_PARAM_LIST => &SyntaxInfo { name: "TYPE_PARAM_LIST" },
|
||||||
|
@ -30,7 +30,7 @@ FILE@[0; 54)
|
|||||||
L_PAREN@[25; 26)
|
L_PAREN@[25; 26)
|
||||||
R_PAREN@[26; 27)
|
R_PAREN@[26; 27)
|
||||||
WHITESPACE@[27; 28)
|
WHITESPACE@[27; 28)
|
||||||
BLOCK@[28; 34)
|
BLOCK_EXPR@[28; 34)
|
||||||
L_CURLY@[28; 29)
|
L_CURLY@[28; 29)
|
||||||
WHITESPACE@[29; 30)
|
WHITESPACE@[29; 30)
|
||||||
R_CURLY@[30; 31)
|
R_CURLY@[30; 31)
|
||||||
@ -53,7 +53,7 @@ FILE@[0; 54)
|
|||||||
L_PAREN@[47; 48)
|
L_PAREN@[47; 48)
|
||||||
R_PAREN@[48; 49)
|
R_PAREN@[48; 49)
|
||||||
WHITESPACE@[49; 50)
|
WHITESPACE@[49; 50)
|
||||||
BLOCK@[50; 54)
|
BLOCK_EXPR@[50; 54)
|
||||||
L_CURLY@[50; 51)
|
L_CURLY@[50; 51)
|
||||||
WHITESPACE@[51; 52)
|
WHITESPACE@[51; 52)
|
||||||
R_CURLY@[52; 53)
|
R_CURLY@[52; 53)
|
||||||
|
@ -22,7 +22,7 @@ FILE@[0; 31)
|
|||||||
PARAM_LIST@[23; 25)
|
PARAM_LIST@[23; 25)
|
||||||
L_PAREN@[23; 24)
|
L_PAREN@[23; 24)
|
||||||
R_PAREN@[24; 25)
|
R_PAREN@[24; 25)
|
||||||
BLOCK@[25; 29)
|
BLOCK_EXPR@[25; 29)
|
||||||
L_CURLY@[25; 26)
|
L_CURLY@[25; 26)
|
||||||
R_CURLY@[26; 27)
|
R_CURLY@[26; 27)
|
||||||
WHITESPACE@[27; 29)
|
WHITESPACE@[27; 29)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 95)
|
|||||||
L_PAREN@[6; 7)
|
L_PAREN@[6; 7)
|
||||||
R_PAREN@[7; 8)
|
R_PAREN@[7; 8)
|
||||||
WHITESPACE@[8; 9)
|
WHITESPACE@[8; 9)
|
||||||
BLOCK@[9; 14)
|
BLOCK_EXPR@[9; 14)
|
||||||
L_CURLY@[9; 10)
|
L_CURLY@[9; 10)
|
||||||
WHITESPACE@[10; 11)
|
WHITESPACE@[10; 11)
|
||||||
R_CURLY@[11; 12)
|
R_CURLY@[11; 12)
|
||||||
@ -60,7 +60,7 @@ FILE@[0; 95)
|
|||||||
L_PAREN@[88; 89)
|
L_PAREN@[88; 89)
|
||||||
R_PAREN@[89; 90)
|
R_PAREN@[89; 90)
|
||||||
WHITESPACE@[90; 91)
|
WHITESPACE@[90; 91)
|
||||||
BLOCK@[91; 95)
|
BLOCK_EXPR@[91; 95)
|
||||||
L_CURLY@[91; 92)
|
L_CURLY@[91; 92)
|
||||||
WHITESPACE@[92; 93)
|
WHITESPACE@[92; 93)
|
||||||
R_CURLY@[93; 94)
|
R_CURLY@[93; 94)
|
||||||
|
3
tests/data/parser/err/0010_unsafe_lambda_block.rs
Normal file
3
tests/data/parser/err/0010_unsafe_lambda_block.rs
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
fn main() {
|
||||||
|
|| -> () unsafe { () };
|
||||||
|
}
|
40
tests/data/parser/err/0010_unsafe_lambda_block.txt
Normal file
40
tests/data/parser/err/0010_unsafe_lambda_block.txt
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
FILE@[0; 42)
|
||||||
|
FN_ITEM@[0; 42)
|
||||||
|
FN_KW@[0; 2)
|
||||||
|
NAME@[2; 7)
|
||||||
|
WHITESPACE@[2; 3)
|
||||||
|
IDENT@[3; 7) "main"
|
||||||
|
PARAM_LIST@[7; 10)
|
||||||
|
L_PAREN@[7; 8)
|
||||||
|
R_PAREN@[8; 9)
|
||||||
|
WHITESPACE@[9; 10)
|
||||||
|
BLOCK_EXPR@[10; 42)
|
||||||
|
L_CURLY@[10; 11)
|
||||||
|
LAMBDA_EXPR@[11; 25)
|
||||||
|
PARAM_LIST@[11; 19)
|
||||||
|
WHITESPACE@[11; 16)
|
||||||
|
PIPE@[16; 17)
|
||||||
|
PIPE@[17; 18)
|
||||||
|
WHITESPACE@[18; 19)
|
||||||
|
THIN_ARROW@[19; 21)
|
||||||
|
TUPLE_TYPE@[21; 25)
|
||||||
|
WHITESPACE@[21; 22)
|
||||||
|
L_PAREN@[22; 23)
|
||||||
|
R_PAREN@[23; 24)
|
||||||
|
WHITESPACE@[24; 25)
|
||||||
|
err: `expected block`
|
||||||
|
EXPR_STMT@[25; 40)
|
||||||
|
BLOCK_EXPR@[25; 38)
|
||||||
|
UNSAFE_KW@[25; 31)
|
||||||
|
WHITESPACE@[31; 32)
|
||||||
|
L_CURLY@[32; 33)
|
||||||
|
TUPLE_EXPR@[33; 37)
|
||||||
|
WHITESPACE@[33; 34)
|
||||||
|
L_PAREN@[34; 35)
|
||||||
|
R_PAREN@[35; 36)
|
||||||
|
WHITESPACE@[36; 37)
|
||||||
|
R_CURLY@[37; 38)
|
||||||
|
SEMI@[38; 39)
|
||||||
|
WHITESPACE@[39; 40)
|
||||||
|
R_CURLY@[40; 41)
|
||||||
|
WHITESPACE@[41; 42)
|
@ -12,7 +12,7 @@ FILE@[0; 25)
|
|||||||
L_PAREN@[19; 20)
|
L_PAREN@[19; 20)
|
||||||
R_PAREN@[20; 21)
|
R_PAREN@[20; 21)
|
||||||
WHITESPACE@[21; 22)
|
WHITESPACE@[21; 22)
|
||||||
BLOCK@[22; 25)
|
BLOCK_EXPR@[22; 25)
|
||||||
L_CURLY@[22; 23)
|
L_CURLY@[22; 23)
|
||||||
R_CURLY@[23; 24)
|
R_CURLY@[23; 24)
|
||||||
WHITESPACE@[24; 25)
|
WHITESPACE@[24; 25)
|
||||||
|
@ -10,7 +10,7 @@ FILE@[0; 18)
|
|||||||
L_PAREN@[12; 13)
|
L_PAREN@[12; 13)
|
||||||
R_PAREN@[13; 14)
|
R_PAREN@[13; 14)
|
||||||
WHITESPACE@[14; 15)
|
WHITESPACE@[14; 15)
|
||||||
BLOCK@[15; 18)
|
BLOCK_EXPR@[15; 18)
|
||||||
L_CURLY@[15; 16)
|
L_CURLY@[15; 16)
|
||||||
R_CURLY@[16; 17)
|
R_CURLY@[16; 17)
|
||||||
WHITESPACE@[17; 18)
|
WHITESPACE@[17; 18)
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
FILE@[0; 10)
|
FILE@[0; 10)
|
||||||
EXTERN_BLOCK@[0; 10)
|
EXTERN_BLOCK_EXPR@[0; 10)
|
||||||
ABI@[0; 7)
|
ABI@[0; 7)
|
||||||
EXTERN_KW@[0; 6)
|
EXTERN_KW@[0; 6)
|
||||||
WHITESPACE@[6; 7)
|
WHITESPACE@[6; 7)
|
||||||
|
@ -11,7 +11,7 @@ FILE@[0; 19)
|
|||||||
L_PAREN@[13; 14)
|
L_PAREN@[13; 14)
|
||||||
R_PAREN@[14; 15)
|
R_PAREN@[14; 15)
|
||||||
WHITESPACE@[15; 16)
|
WHITESPACE@[15; 16)
|
||||||
BLOCK@[16; 19)
|
BLOCK_EXPR@[16; 19)
|
||||||
L_CURLY@[16; 17)
|
L_CURLY@[16; 17)
|
||||||
R_CURLY@[17; 18)
|
R_CURLY@[17; 18)
|
||||||
WHITESPACE@[18; 19)
|
WHITESPACE@[18; 19)
|
||||||
|
@ -10,7 +10,7 @@ FILE@[0; 19)
|
|||||||
L_PAREN@[13; 14)
|
L_PAREN@[13; 14)
|
||||||
R_PAREN@[14; 15)
|
R_PAREN@[14; 15)
|
||||||
WHITESPACE@[15; 16)
|
WHITESPACE@[15; 16)
|
||||||
BLOCK@[16; 19)
|
BLOCK_EXPR@[16; 19)
|
||||||
L_CURLY@[16; 17)
|
L_CURLY@[16; 17)
|
||||||
R_CURLY@[17; 18)
|
R_CURLY@[17; 18)
|
||||||
WHITESPACE@[18; 19)
|
WHITESPACE@[18; 19)
|
||||||
|
@ -15,7 +15,7 @@ FILE@[0; 30)
|
|||||||
L_PAREN@[24; 25)
|
L_PAREN@[24; 25)
|
||||||
R_PAREN@[25; 26)
|
R_PAREN@[25; 26)
|
||||||
WHITESPACE@[26; 27)
|
WHITESPACE@[26; 27)
|
||||||
BLOCK@[27; 30)
|
BLOCK_EXPR@[27; 30)
|
||||||
L_CURLY@[27; 28)
|
L_CURLY@[27; 28)
|
||||||
R_CURLY@[28; 29)
|
R_CURLY@[28; 29)
|
||||||
WHITESPACE@[29; 30)
|
WHITESPACE@[29; 30)
|
||||||
|
@ -7,7 +7,7 @@ FILE@[0; 33)
|
|||||||
PARAM_LIST@[6; 8)
|
PARAM_LIST@[6; 8)
|
||||||
L_PAREN@[6; 7)
|
L_PAREN@[6; 7)
|
||||||
R_PAREN@[7; 8)
|
R_PAREN@[7; 8)
|
||||||
BLOCK@[8; 11)
|
BLOCK_EXPR@[8; 11)
|
||||||
L_CURLY@[8; 9)
|
L_CURLY@[8; 9)
|
||||||
R_CURLY@[9; 10)
|
R_CURLY@[9; 10)
|
||||||
WHITESPACE@[10; 11)
|
WHITESPACE@[10; 11)
|
||||||
@ -27,7 +27,7 @@ FILE@[0; 33)
|
|||||||
PARAM_LIST@[28; 30)
|
PARAM_LIST@[28; 30)
|
||||||
L_PAREN@[28; 29)
|
L_PAREN@[28; 29)
|
||||||
R_PAREN@[29; 30)
|
R_PAREN@[29; 30)
|
||||||
BLOCK@[30; 33)
|
BLOCK_EXPR@[30; 33)
|
||||||
L_CURLY@[30; 31)
|
L_CURLY@[30; 31)
|
||||||
R_CURLY@[31; 32)
|
R_CURLY@[31; 32)
|
||||||
WHITESPACE@[32; 33)
|
WHITESPACE@[32; 33)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 146)
|
|||||||
L_PAREN@[7; 8)
|
L_PAREN@[7; 8)
|
||||||
R_PAREN@[8; 9)
|
R_PAREN@[8; 9)
|
||||||
WHITESPACE@[9; 10)
|
WHITESPACE@[9; 10)
|
||||||
BLOCK@[10; 146)
|
BLOCK_EXPR@[10; 146)
|
||||||
L_CURLY@[10; 11)
|
L_CURLY@[10; 11)
|
||||||
LET_STMT@[11; 32)
|
LET_STMT@[11; 32)
|
||||||
WHITESPACE@[11; 16)
|
WHITESPACE@[11; 16)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 52)
|
|||||||
L_PAREN@[7; 8)
|
L_PAREN@[7; 8)
|
||||||
R_PAREN@[8; 9)
|
R_PAREN@[8; 9)
|
||||||
WHITESPACE@[9; 10)
|
WHITESPACE@[9; 10)
|
||||||
BLOCK@[10; 52)
|
BLOCK_EXPR@[10; 52)
|
||||||
L_CURLY@[10; 11)
|
L_CURLY@[10; 11)
|
||||||
LET_STMT@[11; 33)
|
LET_STMT@[11; 33)
|
||||||
WHITESPACE@[11; 16)
|
WHITESPACE@[11; 16)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 26)
|
|||||||
L_PAREN@[7; 8)
|
L_PAREN@[7; 8)
|
||||||
R_PAREN@[8; 9)
|
R_PAREN@[8; 9)
|
||||||
WHITESPACE@[9; 10)
|
WHITESPACE@[9; 10)
|
||||||
BLOCK@[10; 26)
|
BLOCK_EXPR@[10; 26)
|
||||||
L_CURLY@[10; 11)
|
L_CURLY@[10; 11)
|
||||||
LET_STMT@[11; 24)
|
LET_STMT@[11; 24)
|
||||||
WHITESPACE@[11; 12)
|
WHITESPACE@[11; 12)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 30)
|
|||||||
L_PAREN@[6; 7)
|
L_PAREN@[6; 7)
|
||||||
R_PAREN@[7; 8)
|
R_PAREN@[7; 8)
|
||||||
WHITESPACE@[8; 9)
|
WHITESPACE@[8; 9)
|
||||||
BLOCK@[9; 12)
|
BLOCK_EXPR@[9; 12)
|
||||||
L_CURLY@[9; 10)
|
L_CURLY@[9; 10)
|
||||||
R_CURLY@[10; 11)
|
R_CURLY@[10; 11)
|
||||||
WHITESPACE@[11; 12)
|
WHITESPACE@[11; 12)
|
||||||
@ -27,7 +27,7 @@ FILE@[0; 30)
|
|||||||
L_PAREN@[24; 25)
|
L_PAREN@[24; 25)
|
||||||
R_PAREN@[25; 26)
|
R_PAREN@[25; 26)
|
||||||
WHITESPACE@[26; 27)
|
WHITESPACE@[26; 27)
|
||||||
BLOCK@[27; 30)
|
BLOCK_EXPR@[27; 30)
|
||||||
L_CURLY@[27; 28)
|
L_CURLY@[27; 28)
|
||||||
R_CURLY@[28; 29)
|
R_CURLY@[28; 29)
|
||||||
WHITESPACE@[29; 30)
|
WHITESPACE@[29; 30)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 68)
|
|||||||
L_PAREN@[6; 7)
|
L_PAREN@[6; 7)
|
||||||
R_PAREN@[7; 8)
|
R_PAREN@[7; 8)
|
||||||
WHITESPACE@[8; 9)
|
WHITESPACE@[8; 9)
|
||||||
BLOCK@[9; 68)
|
BLOCK_EXPR@[9; 68)
|
||||||
L_CURLY@[9; 10)
|
L_CURLY@[9; 10)
|
||||||
LET_STMT@[10; 30)
|
LET_STMT@[10; 30)
|
||||||
WHITESPACE@[10; 15)
|
WHITESPACE@[10; 15)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 189)
|
|||||||
L_PAREN@[6; 7)
|
L_PAREN@[6; 7)
|
||||||
R_PAREN@[7; 8)
|
R_PAREN@[7; 8)
|
||||||
WHITESPACE@[8; 9)
|
WHITESPACE@[8; 9)
|
||||||
BLOCK@[9; 189)
|
BLOCK_EXPR@[9; 189)
|
||||||
L_CURLY@[9; 10)
|
L_CURLY@[9; 10)
|
||||||
LET_STMT@[10; 33)
|
LET_STMT@[10; 33)
|
||||||
WHITESPACE@[10; 15)
|
WHITESPACE@[10; 15)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 57)
|
|||||||
L_PAREN@[6; 7)
|
L_PAREN@[6; 7)
|
||||||
R_PAREN@[7; 8)
|
R_PAREN@[7; 8)
|
||||||
WHITESPACE@[8; 9)
|
WHITESPACE@[8; 9)
|
||||||
BLOCK@[9; 57)
|
BLOCK_EXPR@[9; 57)
|
||||||
L_CURLY@[9; 10)
|
L_CURLY@[9; 10)
|
||||||
LET_STMT@[10; 32)
|
LET_STMT@[10; 32)
|
||||||
WHITESPACE@[10; 15)
|
WHITESPACE@[10; 15)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 52)
|
|||||||
L_PAREN@[6; 7)
|
L_PAREN@[6; 7)
|
||||||
R_PAREN@[7; 8)
|
R_PAREN@[7; 8)
|
||||||
WHITESPACE@[8; 9)
|
WHITESPACE@[8; 9)
|
||||||
BLOCK@[9; 52)
|
BLOCK_EXPR@[9; 52)
|
||||||
L_CURLY@[9; 10)
|
L_CURLY@[9; 10)
|
||||||
LET_STMT@[10; 31)
|
LET_STMT@[10; 31)
|
||||||
WHITESPACE@[10; 15)
|
WHITESPACE@[10; 15)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 65)
|
|||||||
L_PAREN@[4; 5)
|
L_PAREN@[4; 5)
|
||||||
R_PAREN@[5; 6)
|
R_PAREN@[5; 6)
|
||||||
WHITESPACE@[6; 7)
|
WHITESPACE@[6; 7)
|
||||||
BLOCK@[7; 10)
|
BLOCK_EXPR@[7; 10)
|
||||||
L_CURLY@[7; 8)
|
L_CURLY@[7; 8)
|
||||||
R_CURLY@[8; 9)
|
R_CURLY@[8; 9)
|
||||||
WHITESPACE@[9; 10)
|
WHITESPACE@[9; 10)
|
||||||
@ -21,7 +21,7 @@ FILE@[0; 65)
|
|||||||
L_PAREN@[14; 15)
|
L_PAREN@[14; 15)
|
||||||
R_PAREN@[15; 16)
|
R_PAREN@[15; 16)
|
||||||
WHITESPACE@[16; 17)
|
WHITESPACE@[16; 17)
|
||||||
BLOCK@[17; 32)
|
BLOCK_EXPR@[17; 32)
|
||||||
L_CURLY@[17; 18)
|
L_CURLY@[17; 18)
|
||||||
LET_STMT@[18; 30)
|
LET_STMT@[18; 30)
|
||||||
WHITESPACE@[18; 19)
|
WHITESPACE@[18; 19)
|
||||||
@ -47,7 +47,7 @@ FILE@[0; 65)
|
|||||||
L_PAREN@[36; 37)
|
L_PAREN@[36; 37)
|
||||||
R_PAREN@[37; 38)
|
R_PAREN@[37; 38)
|
||||||
WHITESPACE@[38; 39)
|
WHITESPACE@[38; 39)
|
||||||
BLOCK@[39; 49)
|
BLOCK_EXPR@[39; 49)
|
||||||
L_CURLY@[39; 40)
|
L_CURLY@[39; 40)
|
||||||
EXPR_STMT@[40; 44)
|
EXPR_STMT@[40; 44)
|
||||||
LITERAL@[40; 42)
|
LITERAL@[40; 42)
|
||||||
@ -71,7 +71,7 @@ FILE@[0; 65)
|
|||||||
L_PAREN@[53; 54)
|
L_PAREN@[53; 54)
|
||||||
R_PAREN@[54; 55)
|
R_PAREN@[54; 55)
|
||||||
WHITESPACE@[55; 56)
|
WHITESPACE@[55; 56)
|
||||||
BLOCK@[56; 65)
|
BLOCK_EXPR@[56; 65)
|
||||||
L_CURLY@[56; 57)
|
L_CURLY@[56; 57)
|
||||||
EXPR_STMT@[57; 61)
|
EXPR_STMT@[57; 61)
|
||||||
LITERAL@[57; 59)
|
LITERAL@[57; 59)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 77)
|
|||||||
L_PAREN@[6; 7)
|
L_PAREN@[6; 7)
|
||||||
R_PAREN@[7; 8)
|
R_PAREN@[7; 8)
|
||||||
WHITESPACE@[8; 9)
|
WHITESPACE@[8; 9)
|
||||||
BLOCK@[9; 77)
|
BLOCK_EXPR@[9; 77)
|
||||||
L_CURLY@[9; 10)
|
L_CURLY@[9; 10)
|
||||||
LET_STMT@[10; 26)
|
LET_STMT@[10; 26)
|
||||||
WHITESPACE@[10; 15)
|
WHITESPACE@[10; 15)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 44)
|
|||||||
L_PAREN@[6; 7)
|
L_PAREN@[6; 7)
|
||||||
R_PAREN@[7; 8)
|
R_PAREN@[7; 8)
|
||||||
WHITESPACE@[8; 9)
|
WHITESPACE@[8; 9)
|
||||||
BLOCK@[9; 44)
|
BLOCK_EXPR@[9; 44)
|
||||||
L_CURLY@[9; 10)
|
L_CURLY@[9; 10)
|
||||||
EXPR_STMT@[10; 28)
|
EXPR_STMT@[10; 28)
|
||||||
METHOD_CALL_EXPR@[10; 22)
|
METHOD_CALL_EXPR@[10; 22)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 37)
|
|||||||
L_PAREN@[6; 7)
|
L_PAREN@[6; 7)
|
||||||
R_PAREN@[7; 8)
|
R_PAREN@[7; 8)
|
||||||
WHITESPACE@[8; 9)
|
WHITESPACE@[8; 9)
|
||||||
BLOCK@[9; 37)
|
BLOCK_EXPR@[9; 37)
|
||||||
L_CURLY@[9; 10)
|
L_CURLY@[9; 10)
|
||||||
EXPR_STMT@[10; 26)
|
EXPR_STMT@[10; 26)
|
||||||
FIELD_EXPR@[10; 20)
|
FIELD_EXPR@[10; 20)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 21)
|
|||||||
L_PAREN@[4; 5)
|
L_PAREN@[4; 5)
|
||||||
R_PAREN@[5; 6)
|
R_PAREN@[5; 6)
|
||||||
WHITESPACE@[6; 7)
|
WHITESPACE@[6; 7)
|
||||||
BLOCK@[7; 21)
|
BLOCK_EXPR@[7; 21)
|
||||||
L_CURLY@[7; 8)
|
L_CURLY@[7; 8)
|
||||||
FN_ITEM@[8; 19)
|
FN_ITEM@[8; 19)
|
||||||
WHITESPACE@[8; 9)
|
WHITESPACE@[8; 9)
|
||||||
@ -20,7 +20,7 @@ FILE@[0; 21)
|
|||||||
L_PAREN@[13; 14)
|
L_PAREN@[13; 14)
|
||||||
R_PAREN@[14; 15)
|
R_PAREN@[14; 15)
|
||||||
WHITESPACE@[15; 16)
|
WHITESPACE@[15; 16)
|
||||||
BLOCK@[16; 19)
|
BLOCK_EXPR@[16; 19)
|
||||||
L_CURLY@[16; 17)
|
L_CURLY@[16; 17)
|
||||||
R_CURLY@[17; 18)
|
R_CURLY@[17; 18)
|
||||||
WHITESPACE@[18; 19)
|
WHITESPACE@[18; 19)
|
||||||
|
@ -53,7 +53,7 @@ FILE@[0; 89)
|
|||||||
L_PAREN@[60; 61)
|
L_PAREN@[60; 61)
|
||||||
R_PAREN@[61; 62)
|
R_PAREN@[61; 62)
|
||||||
WHITESPACE@[62; 63)
|
WHITESPACE@[62; 63)
|
||||||
BLOCK@[63; 70)
|
BLOCK_EXPR@[63; 70)
|
||||||
L_CURLY@[63; 64)
|
L_CURLY@[63; 64)
|
||||||
R_CURLY@[64; 65)
|
R_CURLY@[64; 65)
|
||||||
WHITESPACE@[65; 70)
|
WHITESPACE@[65; 70)
|
||||||
@ -69,7 +69,7 @@ FILE@[0; 89)
|
|||||||
SELF_KW@[78; 82)
|
SELF_KW@[78; 82)
|
||||||
R_PAREN@[82; 83)
|
R_PAREN@[82; 83)
|
||||||
WHITESPACE@[83; 84)
|
WHITESPACE@[83; 84)
|
||||||
BLOCK@[84; 87)
|
BLOCK_EXPR@[84; 87)
|
||||||
L_CURLY@[84; 85)
|
L_CURLY@[84; 85)
|
||||||
R_CURLY@[85; 86)
|
R_CURLY@[85; 86)
|
||||||
WHITESPACE@[86; 87)
|
WHITESPACE@[86; 87)
|
||||||
|
@ -21,7 +21,7 @@ FILE@[0; 106)
|
|||||||
SELF_KW@[18; 22)
|
SELF_KW@[18; 22)
|
||||||
R_PAREN@[22; 23)
|
R_PAREN@[22; 23)
|
||||||
WHITESPACE@[23; 24)
|
WHITESPACE@[23; 24)
|
||||||
BLOCK@[24; 31)
|
BLOCK_EXPR@[24; 31)
|
||||||
L_CURLY@[24; 25)
|
L_CURLY@[24; 25)
|
||||||
R_CURLY@[25; 26)
|
R_CURLY@[25; 26)
|
||||||
WHITESPACE@[26; 31)
|
WHITESPACE@[26; 31)
|
||||||
@ -38,7 +38,7 @@ FILE@[0; 106)
|
|||||||
COMMA@[41; 42)
|
COMMA@[41; 42)
|
||||||
R_PAREN@[42; 43)
|
R_PAREN@[42; 43)
|
||||||
WHITESPACE@[43; 44)
|
WHITESPACE@[43; 44)
|
||||||
BLOCK@[44; 51)
|
BLOCK_EXPR@[44; 51)
|
||||||
L_CURLY@[44; 45)
|
L_CURLY@[44; 45)
|
||||||
R_CURLY@[45; 46)
|
R_CURLY@[45; 46)
|
||||||
WHITESPACE@[46; 51)
|
WHITESPACE@[46; 51)
|
||||||
@ -57,7 +57,7 @@ FILE@[0; 106)
|
|||||||
COMMA@[64; 65)
|
COMMA@[64; 65)
|
||||||
R_PAREN@[65; 66)
|
R_PAREN@[65; 66)
|
||||||
WHITESPACE@[66; 67)
|
WHITESPACE@[66; 67)
|
||||||
BLOCK@[67; 74)
|
BLOCK_EXPR@[67; 74)
|
||||||
L_CURLY@[67; 68)
|
L_CURLY@[67; 68)
|
||||||
R_CURLY@[68; 69)
|
R_CURLY@[68; 69)
|
||||||
WHITESPACE@[69; 74)
|
WHITESPACE@[69; 74)
|
||||||
@ -90,7 +90,7 @@ FILE@[0; 106)
|
|||||||
IDENT@[96; 99) "i32"
|
IDENT@[96; 99) "i32"
|
||||||
R_PAREN@[99; 100)
|
R_PAREN@[99; 100)
|
||||||
WHITESPACE@[100; 101)
|
WHITESPACE@[100; 101)
|
||||||
BLOCK@[101; 104)
|
BLOCK_EXPR@[101; 104)
|
||||||
L_CURLY@[101; 102)
|
L_CURLY@[101; 102)
|
||||||
R_CURLY@[102; 103)
|
R_CURLY@[102; 103)
|
||||||
WHITESPACE@[103; 104)
|
WHITESPACE@[103; 104)
|
||||||
|
@ -22,7 +22,7 @@ FILE@[0; 29)
|
|||||||
WHITESPACE@[20; 21)
|
WHITESPACE@[20; 21)
|
||||||
IDENT@[21; 25) "Copy"
|
IDENT@[21; 25) "Copy"
|
||||||
WHITESPACE@[25; 26)
|
WHITESPACE@[25; 26)
|
||||||
BLOCK@[26; 29)
|
BLOCK_EXPR@[26; 29)
|
||||||
L_CURLY@[26; 27)
|
L_CURLY@[26; 27)
|
||||||
R_CURLY@[27; 28)
|
R_CURLY@[27; 28)
|
||||||
WHITESPACE@[28; 29)
|
WHITESPACE@[28; 29)
|
||||||
|
@ -26,7 +26,7 @@ FILE@[0; 28)
|
|||||||
PARAM_LIST@[23; 25)
|
PARAM_LIST@[23; 25)
|
||||||
L_PAREN@[23; 24)
|
L_PAREN@[23; 24)
|
||||||
R_PAREN@[24; 25)
|
R_PAREN@[24; 25)
|
||||||
BLOCK@[25; 28)
|
BLOCK_EXPR@[25; 28)
|
||||||
L_CURLY@[25; 26)
|
L_CURLY@[25; 26)
|
||||||
R_CURLY@[26; 27)
|
R_CURLY@[26; 27)
|
||||||
WHITESPACE@[27; 28)
|
WHITESPACE@[27; 28)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 86)
|
|||||||
L_PAREN@[6; 7)
|
L_PAREN@[6; 7)
|
||||||
R_PAREN@[7; 8)
|
R_PAREN@[7; 8)
|
||||||
WHITESPACE@[8; 9)
|
WHITESPACE@[8; 9)
|
||||||
BLOCK@[9; 86)
|
BLOCK_EXPR@[9; 86)
|
||||||
L_CURLY@[9; 10)
|
L_CURLY@[9; 10)
|
||||||
EXPR_STMT@[10; 25)
|
EXPR_STMT@[10; 25)
|
||||||
STRUCT_LIT@[10; 19)
|
STRUCT_LIT@[10; 19)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 23)
|
|||||||
L_PAREN@[6; 7)
|
L_PAREN@[6; 7)
|
||||||
R_PAREN@[7; 8)
|
R_PAREN@[7; 8)
|
||||||
WHITESPACE@[8; 9)
|
WHITESPACE@[8; 9)
|
||||||
BLOCK@[9; 23)
|
BLOCK_EXPR@[9; 23)
|
||||||
L_CURLY@[9; 10)
|
L_CURLY@[9; 10)
|
||||||
EXPR_STMT@[10; 21)
|
EXPR_STMT@[10; 21)
|
||||||
DEREF_EXPR@[10; 19)
|
DEREF_EXPR@[10; 19)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 74)
|
|||||||
L_PAREN@[6; 7)
|
L_PAREN@[6; 7)
|
||||||
R_PAREN@[7; 8)
|
R_PAREN@[7; 8)
|
||||||
WHITESPACE@[8; 9)
|
WHITESPACE@[8; 9)
|
||||||
BLOCK@[9; 74)
|
BLOCK_EXPR@[9; 74)
|
||||||
L_CURLY@[9; 10)
|
L_CURLY@[9; 10)
|
||||||
EXPR_STMT@[10; 26)
|
EXPR_STMT@[10; 26)
|
||||||
LAMBDA_EXPR@[10; 20)
|
LAMBDA_EXPR@[10; 20)
|
||||||
@ -36,7 +36,7 @@ FILE@[0; 74)
|
|||||||
WHITESPACE@[31; 32)
|
WHITESPACE@[31; 32)
|
||||||
IDENT@[32; 35) "i32"
|
IDENT@[32; 35) "i32"
|
||||||
WHITESPACE@[35; 36)
|
WHITESPACE@[35; 36)
|
||||||
BLOCK@[36; 42)
|
BLOCK_EXPR@[36; 42)
|
||||||
L_CURLY@[36; 37)
|
L_CURLY@[36; 37)
|
||||||
LITERAL@[37; 41)
|
LITERAL@[37; 41)
|
||||||
WHITESPACE@[37; 38)
|
WHITESPACE@[37; 38)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 67)
|
|||||||
L_PAREN@[4; 5)
|
L_PAREN@[4; 5)
|
||||||
R_PAREN@[5; 6)
|
R_PAREN@[5; 6)
|
||||||
WHITESPACE@[6; 7)
|
WHITESPACE@[6; 7)
|
||||||
BLOCK@[7; 10)
|
BLOCK_EXPR@[7; 10)
|
||||||
L_CURLY@[7; 8)
|
L_CURLY@[7; 8)
|
||||||
R_CURLY@[8; 9)
|
R_CURLY@[8; 9)
|
||||||
WHITESPACE@[9; 10)
|
WHITESPACE@[9; 10)
|
||||||
@ -32,7 +32,7 @@ FILE@[0; 67)
|
|||||||
IDENT@[18; 21) "i32"
|
IDENT@[18; 21) "i32"
|
||||||
R_PAREN@[21; 22)
|
R_PAREN@[21; 22)
|
||||||
WHITESPACE@[22; 23)
|
WHITESPACE@[22; 23)
|
||||||
BLOCK@[23; 26)
|
BLOCK_EXPR@[23; 26)
|
||||||
L_CURLY@[23; 24)
|
L_CURLY@[23; 24)
|
||||||
R_CURLY@[24; 25)
|
R_CURLY@[24; 25)
|
||||||
WHITESPACE@[25; 26)
|
WHITESPACE@[25; 26)
|
||||||
@ -58,7 +58,7 @@ FILE@[0; 67)
|
|||||||
WHITESPACE@[38; 39)
|
WHITESPACE@[38; 39)
|
||||||
R_PAREN@[39; 40)
|
R_PAREN@[39; 40)
|
||||||
WHITESPACE@[40; 41)
|
WHITESPACE@[40; 41)
|
||||||
BLOCK@[41; 44)
|
BLOCK_EXPR@[41; 44)
|
||||||
L_CURLY@[41; 42)
|
L_CURLY@[41; 42)
|
||||||
R_CURLY@[42; 43)
|
R_CURLY@[42; 43)
|
||||||
WHITESPACE@[43; 44)
|
WHITESPACE@[43; 44)
|
||||||
@ -93,7 +93,7 @@ FILE@[0; 67)
|
|||||||
R_PAREN@[61; 62)
|
R_PAREN@[61; 62)
|
||||||
R_PAREN@[62; 63)
|
R_PAREN@[62; 63)
|
||||||
WHITESPACE@[63; 64)
|
WHITESPACE@[63; 64)
|
||||||
BLOCK@[64; 67)
|
BLOCK_EXPR@[64; 67)
|
||||||
L_CURLY@[64; 65)
|
L_CURLY@[64; 65)
|
||||||
R_CURLY@[65; 66)
|
R_CURLY@[65; 66)
|
||||||
WHITESPACE@[66; 67)
|
WHITESPACE@[66; 67)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 93)
|
|||||||
L_PAREN@[6; 7)
|
L_PAREN@[6; 7)
|
||||||
R_PAREN@[7; 8)
|
R_PAREN@[7; 8)
|
||||||
WHITESPACE@[8; 9)
|
WHITESPACE@[8; 9)
|
||||||
BLOCK@[9; 93)
|
BLOCK_EXPR@[9; 93)
|
||||||
L_CURLY@[9; 10)
|
L_CURLY@[9; 10)
|
||||||
EXPR_STMT@[10; 31)
|
EXPR_STMT@[10; 31)
|
||||||
IF_EXPR@[10; 25)
|
IF_EXPR@[10; 25)
|
||||||
@ -18,7 +18,7 @@ FILE@[0; 93)
|
|||||||
WHITESPACE@[17; 18)
|
WHITESPACE@[17; 18)
|
||||||
TRUE_KW@[18; 22)
|
TRUE_KW@[18; 22)
|
||||||
WHITESPACE@[22; 23)
|
WHITESPACE@[22; 23)
|
||||||
BLOCK@[23; 25)
|
BLOCK_EXPR@[23; 25)
|
||||||
L_CURLY@[23; 24)
|
L_CURLY@[23; 24)
|
||||||
R_CURLY@[24; 25)
|
R_CURLY@[24; 25)
|
||||||
SEMI@[25; 26)
|
SEMI@[25; 26)
|
||||||
@ -30,12 +30,12 @@ FILE@[0; 93)
|
|||||||
WHITESPACE@[33; 34)
|
WHITESPACE@[33; 34)
|
||||||
TRUE_KW@[34; 38)
|
TRUE_KW@[34; 38)
|
||||||
WHITESPACE@[38; 39)
|
WHITESPACE@[38; 39)
|
||||||
BLOCK@[39; 42)
|
BLOCK_EXPR@[39; 42)
|
||||||
L_CURLY@[39; 40)
|
L_CURLY@[39; 40)
|
||||||
R_CURLY@[40; 41)
|
R_CURLY@[40; 41)
|
||||||
WHITESPACE@[41; 42)
|
WHITESPACE@[41; 42)
|
||||||
ELSE_KW@[42; 46)
|
ELSE_KW@[42; 46)
|
||||||
BLOCK@[46; 49)
|
BLOCK_EXPR@[46; 49)
|
||||||
WHITESPACE@[46; 47)
|
WHITESPACE@[46; 47)
|
||||||
L_CURLY@[47; 48)
|
L_CURLY@[47; 48)
|
||||||
R_CURLY@[48; 49)
|
R_CURLY@[48; 49)
|
||||||
@ -47,7 +47,7 @@ FILE@[0; 93)
|
|||||||
WHITESPACE@[57; 58)
|
WHITESPACE@[57; 58)
|
||||||
TRUE_KW@[58; 62)
|
TRUE_KW@[58; 62)
|
||||||
WHITESPACE@[62; 63)
|
WHITESPACE@[62; 63)
|
||||||
BLOCK@[63; 66)
|
BLOCK_EXPR@[63; 66)
|
||||||
L_CURLY@[63; 64)
|
L_CURLY@[63; 64)
|
||||||
R_CURLY@[64; 65)
|
R_CURLY@[64; 65)
|
||||||
WHITESPACE@[65; 66)
|
WHITESPACE@[65; 66)
|
||||||
@ -59,12 +59,12 @@ FILE@[0; 93)
|
|||||||
WHITESPACE@[73; 74)
|
WHITESPACE@[73; 74)
|
||||||
FALSE_KW@[74; 79)
|
FALSE_KW@[74; 79)
|
||||||
WHITESPACE@[79; 80)
|
WHITESPACE@[79; 80)
|
||||||
BLOCK@[80; 83)
|
BLOCK_EXPR@[80; 83)
|
||||||
L_CURLY@[80; 81)
|
L_CURLY@[80; 81)
|
||||||
R_CURLY@[81; 82)
|
R_CURLY@[81; 82)
|
||||||
WHITESPACE@[82; 83)
|
WHITESPACE@[82; 83)
|
||||||
ELSE_KW@[83; 87)
|
ELSE_KW@[83; 87)
|
||||||
BLOCK@[87; 91)
|
BLOCK_EXPR@[87; 91)
|
||||||
WHITESPACE@[87; 88)
|
WHITESPACE@[87; 88)
|
||||||
L_CURLY@[88; 89)
|
L_CURLY@[88; 89)
|
||||||
R_CURLY@[89; 90)
|
R_CURLY@[89; 90)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 79)
|
|||||||
L_PAREN@[6; 7)
|
L_PAREN@[6; 7)
|
||||||
R_PAREN@[7; 8)
|
R_PAREN@[7; 8)
|
||||||
WHITESPACE@[8; 9)
|
WHITESPACE@[8; 9)
|
||||||
BLOCK@[9; 79)
|
BLOCK_EXPR@[9; 79)
|
||||||
L_CURLY@[9; 10)
|
L_CURLY@[9; 10)
|
||||||
EXPR_STMT@[10; 26)
|
EXPR_STMT@[10; 26)
|
||||||
LAMBDA_EXPR@[10; 20)
|
LAMBDA_EXPR@[10; 20)
|
||||||
@ -36,7 +36,7 @@ FILE@[0; 79)
|
|||||||
WHITESPACE@[31; 32)
|
WHITESPACE@[31; 32)
|
||||||
IDENT@[32; 35) "i32"
|
IDENT@[32; 35) "i32"
|
||||||
WHITESPACE@[35; 36)
|
WHITESPACE@[35; 36)
|
||||||
BLOCK@[36; 42)
|
BLOCK_EXPR@[36; 42)
|
||||||
L_CURLY@[36; 37)
|
L_CURLY@[36; 37)
|
||||||
LITERAL@[37; 41)
|
LITERAL@[37; 41)
|
||||||
WHITESPACE@[37; 38)
|
WHITESPACE@[37; 38)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 25)
|
|||||||
L_PAREN@[6; 7)
|
L_PAREN@[6; 7)
|
||||||
R_PAREN@[7; 8)
|
R_PAREN@[7; 8)
|
||||||
WHITESPACE@[8; 9)
|
WHITESPACE@[8; 9)
|
||||||
BLOCK@[9; 25)
|
BLOCK_EXPR@[9; 25)
|
||||||
L_CURLY@[9; 10)
|
L_CURLY@[9; 10)
|
||||||
EXPR_STMT@[10; 23)
|
EXPR_STMT@[10; 23)
|
||||||
NOT_EXPR@[10; 21)
|
NOT_EXPR@[10; 21)
|
||||||
|
4
tests/data/parser/inline/0067_block_expr.rs
Normal file
4
tests/data/parser/inline/0067_block_expr.rs
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
fn foo() {
|
||||||
|
{};
|
||||||
|
unsafe {};
|
||||||
|
}
|
29
tests/data/parser/inline/0067_block_expr.txt
Normal file
29
tests/data/parser/inline/0067_block_expr.txt
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
FILE@[0; 36)
|
||||||
|
FN_ITEM@[0; 36)
|
||||||
|
FN_KW@[0; 2)
|
||||||
|
NAME@[2; 6)
|
||||||
|
WHITESPACE@[2; 3)
|
||||||
|
IDENT@[3; 6) "foo"
|
||||||
|
PARAM_LIST@[6; 9)
|
||||||
|
L_PAREN@[6; 7)
|
||||||
|
R_PAREN@[7; 8)
|
||||||
|
WHITESPACE@[8; 9)
|
||||||
|
BLOCK_EXPR@[9; 36)
|
||||||
|
L_CURLY@[9; 10)
|
||||||
|
EXPR_STMT@[10; 23)
|
||||||
|
BLOCK_EXPR@[10; 17)
|
||||||
|
WHITESPACE@[10; 15)
|
||||||
|
L_CURLY@[15; 16)
|
||||||
|
R_CURLY@[16; 17)
|
||||||
|
SEMI@[17; 18)
|
||||||
|
WHITESPACE@[18; 23)
|
||||||
|
EXPR_STMT@[23; 34)
|
||||||
|
BLOCK_EXPR@[23; 32)
|
||||||
|
UNSAFE_KW@[23; 29)
|
||||||
|
WHITESPACE@[29; 30)
|
||||||
|
L_CURLY@[30; 31)
|
||||||
|
R_CURLY@[31; 32)
|
||||||
|
SEMI@[32; 33)
|
||||||
|
WHITESPACE@[33; 34)
|
||||||
|
R_CURLY@[34; 35)
|
||||||
|
WHITESPACE@[35; 36)
|
@ -8,7 +8,7 @@ FILE@[0; 13)
|
|||||||
L_PAREN@[6; 7)
|
L_PAREN@[6; 7)
|
||||||
R_PAREN@[7; 8)
|
R_PAREN@[7; 8)
|
||||||
WHITESPACE@[8; 9)
|
WHITESPACE@[8; 9)
|
||||||
BLOCK@[9; 13)
|
BLOCK_EXPR@[9; 13)
|
||||||
L_CURLY@[9; 10)
|
L_CURLY@[9; 10)
|
||||||
WHITESPACE@[10; 11)
|
WHITESPACE@[10; 11)
|
||||||
R_CURLY@[11; 12)
|
R_CURLY@[11; 12)
|
||||||
|
@ -33,7 +33,7 @@ FILE@[0; 118)
|
|||||||
L_PAREN@[37; 38)
|
L_PAREN@[37; 38)
|
||||||
R_PAREN@[38; 39)
|
R_PAREN@[38; 39)
|
||||||
WHITESPACE@[39; 40)
|
WHITESPACE@[39; 40)
|
||||||
BLOCK@[40; 52)
|
BLOCK_EXPR@[40; 52)
|
||||||
L_CURLY@[40; 41)
|
L_CURLY@[40; 41)
|
||||||
WHITESPACE@[41; 46)
|
WHITESPACE@[41; 46)
|
||||||
R_CURLY@[46; 47)
|
R_CURLY@[46; 47)
|
||||||
|
@ -26,7 +26,7 @@ FILE@[0; 35)
|
|||||||
L_PAREN@[29; 30)
|
L_PAREN@[29; 30)
|
||||||
R_PAREN@[30; 31)
|
R_PAREN@[30; 31)
|
||||||
WHITESPACE@[31; 32)
|
WHITESPACE@[31; 32)
|
||||||
BLOCK@[32; 35)
|
BLOCK_EXPR@[32; 35)
|
||||||
L_CURLY@[32; 33)
|
L_CURLY@[32; 33)
|
||||||
R_CURLY@[33; 34)
|
R_CURLY@[33; 34)
|
||||||
WHITESPACE@[34; 35)
|
WHITESPACE@[34; 35)
|
||||||
|
@ -8,7 +8,7 @@ FILE@[0; 98)
|
|||||||
L_PAREN@[4; 5)
|
L_PAREN@[4; 5)
|
||||||
R_PAREN@[5; 6)
|
R_PAREN@[5; 6)
|
||||||
WHITESPACE@[6; 7)
|
WHITESPACE@[6; 7)
|
||||||
BLOCK@[7; 10)
|
BLOCK_EXPR@[7; 10)
|
||||||
L_CURLY@[7; 8)
|
L_CURLY@[7; 8)
|
||||||
R_CURLY@[8; 9)
|
R_CURLY@[8; 9)
|
||||||
WHITESPACE@[9; 10)
|
WHITESPACE@[9; 10)
|
||||||
@ -24,7 +24,7 @@ FILE@[0; 98)
|
|||||||
L_PAREN@[18; 19)
|
L_PAREN@[18; 19)
|
||||||
R_PAREN@[19; 20)
|
R_PAREN@[19; 20)
|
||||||
WHITESPACE@[20; 21)
|
WHITESPACE@[20; 21)
|
||||||
BLOCK@[21; 24)
|
BLOCK_EXPR@[21; 24)
|
||||||
L_CURLY@[21; 22)
|
L_CURLY@[21; 22)
|
||||||
R_CURLY@[22; 23)
|
R_CURLY@[22; 23)
|
||||||
WHITESPACE@[23; 24)
|
WHITESPACE@[23; 24)
|
||||||
@ -43,7 +43,7 @@ FILE@[0; 98)
|
|||||||
L_PAREN@[39; 40)
|
L_PAREN@[39; 40)
|
||||||
R_PAREN@[40; 41)
|
R_PAREN@[40; 41)
|
||||||
WHITESPACE@[41; 42)
|
WHITESPACE@[41; 42)
|
||||||
BLOCK@[42; 45)
|
BLOCK_EXPR@[42; 45)
|
||||||
L_CURLY@[42; 43)
|
L_CURLY@[42; 43)
|
||||||
R_CURLY@[43; 44)
|
R_CURLY@[43; 44)
|
||||||
WHITESPACE@[44; 45)
|
WHITESPACE@[44; 45)
|
||||||
@ -62,7 +62,7 @@ FILE@[0; 98)
|
|||||||
L_PAREN@[60; 61)
|
L_PAREN@[60; 61)
|
||||||
R_PAREN@[61; 62)
|
R_PAREN@[61; 62)
|
||||||
WHITESPACE@[62; 63)
|
WHITESPACE@[62; 63)
|
||||||
BLOCK@[63; 66)
|
BLOCK_EXPR@[63; 66)
|
||||||
L_CURLY@[63; 64)
|
L_CURLY@[63; 64)
|
||||||
R_CURLY@[64; 65)
|
R_CURLY@[64; 65)
|
||||||
WHITESPACE@[65; 66)
|
WHITESPACE@[65; 66)
|
||||||
@ -96,7 +96,7 @@ FILE@[0; 98)
|
|||||||
L_PAREN@[92; 93)
|
L_PAREN@[92; 93)
|
||||||
R_PAREN@[93; 94)
|
R_PAREN@[93; 94)
|
||||||
WHITESPACE@[94; 95)
|
WHITESPACE@[94; 95)
|
||||||
BLOCK@[95; 98)
|
BLOCK_EXPR@[95; 98)
|
||||||
L_CURLY@[95; 96)
|
L_CURLY@[95; 96)
|
||||||
R_CURLY@[96; 97)
|
R_CURLY@[96; 97)
|
||||||
WHITESPACE@[97; 98)
|
WHITESPACE@[97; 98)
|
||||||
|
@ -20,7 +20,7 @@ FILE@[0; 23)
|
|||||||
L_PAREN@[17; 18)
|
L_PAREN@[17; 18)
|
||||||
R_PAREN@[18; 19)
|
R_PAREN@[18; 19)
|
||||||
WHITESPACE@[19; 20)
|
WHITESPACE@[19; 20)
|
||||||
BLOCK@[20; 23)
|
BLOCK_EXPR@[20; 23)
|
||||||
L_CURLY@[20; 21)
|
L_CURLY@[20; 21)
|
||||||
R_CURLY@[21; 22)
|
R_CURLY@[21; 22)
|
||||||
WHITESPACE@[22; 23)
|
WHITESPACE@[22; 23)
|
||||||
|
@ -11,7 +11,7 @@ FILE@[0; 71)
|
|||||||
L_PAREN@[13; 14)
|
L_PAREN@[13; 14)
|
||||||
R_PAREN@[14; 15)
|
R_PAREN@[14; 15)
|
||||||
WHITESPACE@[15; 16)
|
WHITESPACE@[15; 16)
|
||||||
BLOCK@[16; 21)
|
BLOCK_EXPR@[16; 21)
|
||||||
L_CURLY@[16; 17)
|
L_CURLY@[16; 17)
|
||||||
WHITESPACE@[17; 18)
|
WHITESPACE@[17; 18)
|
||||||
R_CURLY@[18; 19)
|
R_CURLY@[18; 19)
|
||||||
@ -30,7 +30,7 @@ FILE@[0; 71)
|
|||||||
L_PAREN@[38; 39)
|
L_PAREN@[38; 39)
|
||||||
R_PAREN@[39; 40)
|
R_PAREN@[39; 40)
|
||||||
WHITESPACE@[40; 41)
|
WHITESPACE@[40; 41)
|
||||||
BLOCK@[41; 46)
|
BLOCK_EXPR@[41; 46)
|
||||||
L_CURLY@[41; 42)
|
L_CURLY@[41; 42)
|
||||||
WHITESPACE@[42; 43)
|
WHITESPACE@[42; 43)
|
||||||
R_CURLY@[43; 44)
|
R_CURLY@[43; 44)
|
||||||
@ -49,7 +49,7 @@ FILE@[0; 71)
|
|||||||
L_PAREN@[64; 65)
|
L_PAREN@[64; 65)
|
||||||
R_PAREN@[65; 66)
|
R_PAREN@[65; 66)
|
||||||
WHITESPACE@[66; 67)
|
WHITESPACE@[66; 67)
|
||||||
BLOCK@[67; 71)
|
BLOCK_EXPR@[67; 71)
|
||||||
L_CURLY@[67; 68)
|
L_CURLY@[67; 68)
|
||||||
WHITESPACE@[68; 69)
|
WHITESPACE@[68; 69)
|
||||||
R_CURLY@[69; 70)
|
R_CURLY@[69; 70)
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
FILE@[0; 27)
|
FILE@[0; 27)
|
||||||
EXTERN_BLOCK@[0; 12)
|
EXTERN_BLOCK_EXPR@[0; 12)
|
||||||
ABI@[0; 7)
|
ABI@[0; 7)
|
||||||
EXTERN_KW@[0; 6)
|
EXTERN_KW@[0; 6)
|
||||||
WHITESPACE@[6; 7)
|
WHITESPACE@[6; 7)
|
||||||
@ -7,7 +7,7 @@ FILE@[0; 27)
|
|||||||
WHITESPACE@[8; 9)
|
WHITESPACE@[8; 9)
|
||||||
R_CURLY@[9; 10)
|
R_CURLY@[9; 10)
|
||||||
WHITESPACE@[10; 12)
|
WHITESPACE@[10; 12)
|
||||||
EXTERN_BLOCK@[12; 27)
|
EXTERN_BLOCK_EXPR@[12; 27)
|
||||||
ABI@[12; 23)
|
ABI@[12; 23)
|
||||||
EXTERN_KW@[12; 18)
|
EXTERN_KW@[12; 18)
|
||||||
WHITESPACE@[18; 19)
|
WHITESPACE@[18; 19)
|
||||||
|
Loading…
Reference in New Issue
Block a user