nodes for blocks

This commit is contained in:
Aleksey Kladov 2018-08-24 19:27:30 +03:00
parent 4d29300396
commit 7edab6ae6b
122 changed files with 1743 additions and 1535 deletions

View file

@ -5,29 +5,30 @@ FILE@[0; 34)
NAME@[7; 8)
IDENT@[7; 8) "S"
WHITESPACE@[8; 9)
L_CURLY@[9; 10)
WHITESPACE@[10; 15)
NAMED_FIELD@[15; 21)
NAME@[15; 16)
IDENT@[15; 16) "a"
COLON@[16; 17)
WHITESPACE@[17; 18)
PATH_TYPE@[18; 21)
PATH@[18; 21)
PATH_SEGMENT@[18; 21)
NAME_REF@[18; 21)
IDENT@[18; 21) "u32"
err: `expected COMMA`
WHITESPACE@[21; 26)
NAMED_FIELD@[26; 32)
NAME@[26; 27)
IDENT@[26; 27) "b"
COLON@[27; 28)
WHITESPACE@[28; 29)
PATH_TYPE@[29; 32)
PATH@[29; 32)
PATH_SEGMENT@[29; 32)
NAME_REF@[29; 32)
IDENT@[29; 32) "u32"
WHITESPACE@[32; 33)
R_CURLY@[33; 34)
NAMED_FIELD_DEF_LIST@[9; 34)
L_CURLY@[9; 10)
WHITESPACE@[10; 15)
NAMED_FIELD_DEF@[15; 21)
NAME@[15; 16)
IDENT@[15; 16) "a"
COLON@[16; 17)
WHITESPACE@[17; 18)
PATH_TYPE@[18; 21)
PATH@[18; 21)
PATH_SEGMENT@[18; 21)
NAME_REF@[18; 21)
IDENT@[18; 21) "u32"
err: `expected COMMA`
WHITESPACE@[21; 26)
NAMED_FIELD_DEF@[26; 32)
NAME@[26; 27)
IDENT@[26; 27) "b"
COLON@[27; 28)
WHITESPACE@[28; 29)
PATH_TYPE@[29; 32)
PATH@[29; 32)
PATH_SEGMENT@[29; 32)
NAME_REF@[29; 32)
IDENT@[29; 32) "u32"
WHITESPACE@[32; 33)
R_CURLY@[33; 34)

View file

@ -13,5 +13,6 @@ FILE@[0; 21)
NAME@[17; 18)
IDENT@[17; 18) "S"
WHITESPACE@[18; 19)
L_CURLY@[19; 20)
R_CURLY@[20; 21)
NAMED_FIELD_DEF_LIST@[19; 21)
L_CURLY@[19; 20)
R_CURLY@[20; 21)

View file

@ -5,34 +5,35 @@ FILE@[0; 40)
NAME@[7; 8)
IDENT@[7; 8) "S"
WHITESPACE@[8; 9)
L_CURLY@[9; 10)
WHITESPACE@[10; 15)
NAMED_FIELD@[15; 21)
NAME@[15; 16)
IDENT@[15; 16) "a"
COLON@[16; 17)
WHITESPACE@[17; 18)
PATH_TYPE@[18; 21)
PATH@[18; 21)
PATH_SEGMENT@[18; 21)
NAME_REF@[18; 21)
IDENT@[18; 21) "i32"
COMMA@[21; 22)
WHITESPACE@[22; 27)
NAMED_FIELD@[27; 36)
NAME@[27; 28)
IDENT@[27; 28) "b"
COLON@[28; 29)
WHITESPACE@[29; 30)
PATH_TYPE@[30; 36)
PATH@[30; 36)
PATH_SEGMENT@[30; 36)
NAME_REF@[30; 36)
IDENT@[30; 36) "String"
COMMA@[36; 37)
WHITESPACE@[37; 38)
R_CURLY@[38; 39)
err: `expected item, found `;`
NAMED_FIELD_DEF_LIST@[9; 39)
L_CURLY@[9; 10)
WHITESPACE@[10; 15)
NAMED_FIELD_DEF@[15; 21)
NAME@[15; 16)
IDENT@[15; 16) "a"
COLON@[16; 17)
WHITESPACE@[17; 18)
PATH_TYPE@[18; 21)
PATH@[18; 21)
PATH_SEGMENT@[18; 21)
NAME_REF@[18; 21)
IDENT@[18; 21) "i32"
COMMA@[21; 22)
WHITESPACE@[22; 27)
NAMED_FIELD_DEF@[27; 36)
NAME@[27; 28)
IDENT@[27; 28) "b"
COLON@[28; 29)
WHITESPACE@[29; 30)
PATH_TYPE@[30; 36)
PATH@[30; 36)
PATH_SEGMENT@[30; 36)
NAME_REF@[30; 36)
IDENT@[30; 36) "String"
COMMA@[36; 37)
WHITESPACE@[37; 38)
R_CURLY@[38; 39)
err: `expected item, found `;`
consider removing this semicolon`
ERROR@[39; 40)
SEMI@[39; 40)

View file

@ -25,7 +25,7 @@ FILE@[0; 54)
L_PAREN@[25; 26)
R_PAREN@[26; 27)
WHITESPACE@[27; 28)
BLOCK_EXPR@[28; 31)
BLOCK@[28; 31)
L_CURLY@[28; 29)
WHITESPACE@[29; 30)
R_CURLY@[30; 31)

View file

@ -5,69 +5,70 @@ FILE@[0; 74)
NAME@[7; 8)
IDENT@[7; 8) "S"
WHITESPACE@[8; 9)
L_CURLY@[9; 10)
WHITESPACE@[10; 15)
NAMED_FIELD@[15; 21)
NAME@[15; 16)
IDENT@[15; 16) "f"
COLON@[16; 17)
WHITESPACE@[17; 18)
PATH_TYPE@[18; 21)
PATH@[18; 21)
PATH_SEGMENT@[18; 21)
NAME_REF@[18; 21)
IDENT@[18; 21) "u32"
COMMA@[21; 22)
WHITESPACE@[22; 27)
VISIBILITY@[27; 30)
PUB_KW@[27; 30)
WHITESPACE@[30; 31)
err: `expected field declaration`
ERROR@[31; 33)
INT_NUMBER@[31; 33) "92"
err: `expected COMMA`
WHITESPACE@[33; 38)
err: `expected field declaration`
ERROR@[38; 39)
PLUS@[38; 39)
err: `expected COMMA`
WHITESPACE@[39; 40)
err: `expected field declaration`
ERROR@[40; 41)
MINUS@[40; 41)
err: `expected COMMA`
WHITESPACE@[41; 42)
err: `expected field declaration`
ERROR@[42; 43)
STAR@[42; 43)
err: `expected COMMA`
WHITESPACE@[43; 48)
NAMED_FIELD@[48; 58)
VISIBILITY@[48; 51)
PUB_KW@[48; 51)
WHITESPACE@[51; 52)
NAME@[52; 53)
IDENT@[52; 53) "x"
COLON@[53; 54)
WHITESPACE@[54; 55)
PATH_TYPE@[55; 58)
PATH@[55; 58)
PATH_SEGMENT@[55; 58)
NAME_REF@[55; 58)
IDENT@[55; 58) "u32"
COMMA@[58; 59)
WHITESPACE@[59; 64)
NAMED_FIELD@[64; 70)
NAME@[64; 65)
IDENT@[64; 65) "z"
COLON@[65; 66)
WHITESPACE@[66; 67)
PATH_TYPE@[67; 70)
PATH@[67; 70)
PATH_SEGMENT@[67; 70)
NAME_REF@[67; 70)
IDENT@[67; 70) "f64"
COMMA@[70; 71)
WHITESPACE@[71; 72)
R_CURLY@[72; 73)
NAMED_FIELD_DEF_LIST@[9; 73)
L_CURLY@[9; 10)
WHITESPACE@[10; 15)
NAMED_FIELD_DEF@[15; 21)
NAME@[15; 16)
IDENT@[15; 16) "f"
COLON@[16; 17)
WHITESPACE@[17; 18)
PATH_TYPE@[18; 21)
PATH@[18; 21)
PATH_SEGMENT@[18; 21)
NAME_REF@[18; 21)
IDENT@[18; 21) "u32"
COMMA@[21; 22)
WHITESPACE@[22; 27)
VISIBILITY@[27; 30)
PUB_KW@[27; 30)
WHITESPACE@[30; 31)
err: `expected field declaration`
ERROR@[31; 33)
INT_NUMBER@[31; 33) "92"
err: `expected COMMA`
WHITESPACE@[33; 38)
err: `expected field declaration`
ERROR@[38; 39)
PLUS@[38; 39)
err: `expected COMMA`
WHITESPACE@[39; 40)
err: `expected field declaration`
ERROR@[40; 41)
MINUS@[40; 41)
err: `expected COMMA`
WHITESPACE@[41; 42)
err: `expected field declaration`
ERROR@[42; 43)
STAR@[42; 43)
err: `expected COMMA`
WHITESPACE@[43; 48)
NAMED_FIELD_DEF@[48; 58)
VISIBILITY@[48; 51)
PUB_KW@[48; 51)
WHITESPACE@[51; 52)
NAME@[52; 53)
IDENT@[52; 53) "x"
COLON@[53; 54)
WHITESPACE@[54; 55)
PATH_TYPE@[55; 58)
PATH@[55; 58)
PATH_SEGMENT@[55; 58)
NAME_REF@[55; 58)
IDENT@[55; 58) "u32"
COMMA@[58; 59)
WHITESPACE@[59; 64)
NAMED_FIELD_DEF@[64; 70)
NAME@[64; 65)
IDENT@[64; 65) "z"
COLON@[65; 66)
WHITESPACE@[66; 67)
PATH_TYPE@[67; 70)
PATH@[67; 70)
PATH_SEGMENT@[67; 70)
NAME_REF@[67; 70)
IDENT@[67; 70) "f64"
COMMA@[70; 71)
WHITESPACE@[71; 72)
R_CURLY@[72; 73)
WHITESPACE@[73; 74)

View file

@ -22,7 +22,7 @@ FILE@[0; 31)
PARAM_LIST@[23; 25)
L_PAREN@[23; 24)
R_PAREN@[24; 25)
BLOCK_EXPR@[25; 27)
BLOCK@[25; 27)
L_CURLY@[25; 26)
R_CURLY@[26; 27)
WHITESPACE@[27; 29)

View file

@ -8,7 +8,7 @@ FILE@[0; 95)
L_PAREN@[6; 7)
R_PAREN@[7; 8)
WHITESPACE@[8; 9)
BLOCK_EXPR@[9; 12)
BLOCK@[9; 12)
L_CURLY@[9; 10)
WHITESPACE@[10; 11)
R_CURLY@[11; 12)
@ -32,23 +32,25 @@ FILE@[0; 95)
WHITESPACE@[28; 29)
TRUE_KW@[29; 33)
WHITESPACE@[33; 34)
L_CURLY@[34; 35)
WHITESPACE@[35; 44)
INT_NUMBER@[44; 45) "1"
WHITESPACE@[45; 50)
R_CURLY@[50; 51)
ERROR@[34; 51)
L_CURLY@[34; 35)
WHITESPACE@[35; 44)
INT_NUMBER@[44; 45) "1"
WHITESPACE@[45; 50)
R_CURLY@[50; 51)
WHITESPACE@[51; 52)
ELSE_KW@[52; 56)
WHITESPACE@[56; 57)
L_CURLY@[57; 58)
WHITESPACE@[58; 67)
INT_NUMBER@[67; 68) "2"
WHITESPACE@[68; 69)
PLUS@[69; 70)
WHITESPACE@[70; 71)
INT_NUMBER@[71; 72) "3"
WHITESPACE@[72; 77)
R_CURLY@[77; 78)
ERROR@[57; 78)
L_CURLY@[57; 58)
WHITESPACE@[58; 67)
INT_NUMBER@[67; 68) "2"
WHITESPACE@[68; 69)
PLUS@[69; 70)
WHITESPACE@[70; 71)
INT_NUMBER@[71; 72) "3"
WHITESPACE@[72; 77)
R_CURLY@[77; 78)
WHITESPACE@[78; 79)
R_CURLY@[79; 80)
WHITESPACE@[80; 82)
@ -61,7 +63,7 @@ FILE@[0; 95)
L_PAREN@[88; 89)
R_PAREN@[89; 90)
WHITESPACE@[90; 91)
BLOCK_EXPR@[91; 94)
BLOCK@[91; 94)
L_CURLY@[91; 92)
WHITESPACE@[92; 93)
R_CURLY@[93; 94)

View file

@ -8,7 +8,7 @@ FILE@[0; 42)
L_PAREN@[7; 8)
R_PAREN@[8; 9)
WHITESPACE@[9; 10)
BLOCK_EXPR@[10; 41)
BLOCK@[10; 41)
L_CURLY@[10; 11)
WHITESPACE@[11; 16)
LAMBDA_EXPR@[16; 24)
@ -21,19 +21,20 @@ FILE@[0; 42)
TUPLE_TYPE@[22; 24)
L_PAREN@[22; 23)
R_PAREN@[23; 24)
err: `expected block`
err: `expected a block`
WHITESPACE@[24; 25)
EXPR_STMT@[25; 39)
BLOCK_EXPR@[25; 38)
UNSAFE_KW@[25; 31)
WHITESPACE@[31; 32)
L_CURLY@[32; 33)
WHITESPACE@[33; 34)
TUPLE_EXPR@[34; 36)
L_PAREN@[34; 35)
R_PAREN@[35; 36)
WHITESPACE@[36; 37)
R_CURLY@[37; 38)
BLOCK@[32; 38)
L_CURLY@[32; 33)
WHITESPACE@[33; 34)
TUPLE_EXPR@[34; 36)
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)

View file

@ -7,76 +7,77 @@ FILE@[0; 86)
WHITESPACE@[10; 11)
NAME@[11; 16)
IDENT@[11; 16) "Cache"
L_PAREN@[16; 17)
WHITESPACE@[17; 22)
POS_FIELD@[22; 68)
PATH_TYPE@[22; 68)
PATH@[22; 68)
PATH_SEGMENT@[22; 68)
NAME_REF@[22; 29)
IDENT@[22; 29) "RefCell"
TYPE_ARG_LIST@[29; 68)
L_ANGLE@[29; 30)
TYPE_ARG@[30; 68)
PATH_TYPE@[30; 68)
PATH@[30; 68)
PATH_SEGMENT@[30; 68)
NAME_REF@[30; 37)
IDENT@[30; 37) "HashMap"
TYPE_ARG_LIST@[37; 68)
L_ANGLE@[37; 38)
WHITESPACE@[38; 47)
TYPE_ARG@[47; 53)
PATH_TYPE@[47; 53)
PATH@[47; 53)
PATH_SEGMENT@[47; 53)
NAME_REF@[47; 53)
IDENT@[47; 53) "TypeId"
COMMA@[53; 54)
WHITESPACE@[54; 63)
TYPE_ARG@[63; 68)
PATH_TYPE@[63; 68)
PATH@[63; 68)
PATH_SEGMENT@[63; 68)
NAME_REF@[63; 66)
IDENT@[63; 66) "Box"
TYPE_ARG_LIST@[66; 68)
L_ANGLE@[66; 67)
err: `expected type`
TYPE_ARG@[67; 68)
ERROR@[67; 68)
AT@[67; 68)
err: `expected COMMA`
err: `expected R_ANGLE`
err: `expected COMMA`
err: `expected R_ANGLE`
err: `expected COMMA`
err: `expected R_ANGLE`
err: `expected COMMA`
WHITESPACE@[68; 69)
POS_FIELD@[69; 72)
PATH_TYPE@[69; 72)
PATH@[69; 72)
PATH_SEGMENT@[69; 72)
NAME_REF@[69; 72)
IDENT@[69; 72) "Any"
err: `expected COMMA`
err: `expected type`
POS_FIELD@[72; 73)
ERROR@[72; 73)
R_ANGLE@[72; 73)
COMMA@[73; 74)
WHITESPACE@[74; 79)
err: `expected type`
POS_FIELD@[79; 80)
ERROR@[79; 80)
R_ANGLE@[79; 80)
err: `expected COMMA`
err: `expected type`
POS_FIELD@[80; 81)
ERROR@[80; 81)
R_ANGLE@[80; 81)
WHITESPACE@[81; 82)
R_PAREN@[82; 83)
POS_FIELD_LIST@[16; 83)
L_PAREN@[16; 17)
WHITESPACE@[17; 22)
POS_FIELD@[22; 68)
PATH_TYPE@[22; 68)
PATH@[22; 68)
PATH_SEGMENT@[22; 68)
NAME_REF@[22; 29)
IDENT@[22; 29) "RefCell"
TYPE_ARG_LIST@[29; 68)
L_ANGLE@[29; 30)
TYPE_ARG@[30; 68)
PATH_TYPE@[30; 68)
PATH@[30; 68)
PATH_SEGMENT@[30; 68)
NAME_REF@[30; 37)
IDENT@[30; 37) "HashMap"
TYPE_ARG_LIST@[37; 68)
L_ANGLE@[37; 38)
WHITESPACE@[38; 47)
TYPE_ARG@[47; 53)
PATH_TYPE@[47; 53)
PATH@[47; 53)
PATH_SEGMENT@[47; 53)
NAME_REF@[47; 53)
IDENT@[47; 53) "TypeId"
COMMA@[53; 54)
WHITESPACE@[54; 63)
TYPE_ARG@[63; 68)
PATH_TYPE@[63; 68)
PATH@[63; 68)
PATH_SEGMENT@[63; 68)
NAME_REF@[63; 66)
IDENT@[63; 66) "Box"
TYPE_ARG_LIST@[66; 68)
L_ANGLE@[66; 67)
err: `expected type`
TYPE_ARG@[67; 68)
ERROR@[67; 68)
AT@[67; 68)
err: `expected COMMA`
err: `expected R_ANGLE`
err: `expected COMMA`
err: `expected R_ANGLE`
err: `expected COMMA`
err: `expected R_ANGLE`
err: `expected COMMA`
WHITESPACE@[68; 69)
POS_FIELD@[69; 72)
PATH_TYPE@[69; 72)
PATH@[69; 72)
PATH_SEGMENT@[69; 72)
NAME_REF@[69; 72)
IDENT@[69; 72) "Any"
err: `expected COMMA`
err: `expected type`
POS_FIELD@[72; 73)
ERROR@[72; 73)
R_ANGLE@[72; 73)
COMMA@[73; 74)
WHITESPACE@[74; 79)
err: `expected type`
POS_FIELD@[79; 80)
ERROR@[79; 80)
R_ANGLE@[79; 80)
err: `expected COMMA`
err: `expected type`
POS_FIELD@[80; 81)
ERROR@[80; 81)
R_ANGLE@[80; 81)
WHITESPACE@[81; 82)
R_PAREN@[82; 83)
SEMI@[83; 84)
WHITESPACE@[84; 86)

View file

@ -25,7 +25,7 @@ FILE@[0; 23)
IDENT@[18; 19) "T"
err: `expected colon`
WHITESPACE@[19; 20)
BLOCK_EXPR@[20; 22)
BLOCK@[20; 22)
L_CURLY@[20; 21)
R_CURLY@[21; 22)
WHITESPACE@[22; 23)