G: names for fns

This commit is contained in:
Aleksey Kladov 2018-02-10 14:04:31 +03:00
parent fc0a9e266b
commit 3c9d8ff423
16 changed files with 73 additions and 49 deletions

View file

@ -211,7 +211,7 @@ fn fn_item(p: &mut Parser) {
assert!(p.at(FN_KW)); assert!(p.at(FN_KW));
p.bump(); p.bump();
p.expect(IDENT); name(p);
if p.at(L_PAREN) { if p.at(L_PAREN) {
fn_value_parameters(p); fn_value_parameters(p);
} else { } else {

View file

@ -23,8 +23,9 @@ FILE@[0; 54)
R_BRACK@[17; 18) R_BRACK@[17; 18)
WHITESPACE@[18; 19) WHITESPACE@[18; 19)
FN_KW@[19; 21) FN_KW@[19; 21)
WHITESPACE@[21; 22) NAME@[21; 25)
IDENT@[22; 25) "foo" WHITESPACE@[21; 22)
IDENT@[22; 25) "foo"
L_PAREN@[25; 26) L_PAREN@[25; 26)
R_PAREN@[26; 27) R_PAREN@[26; 27)
WHITESPACE@[27; 28) WHITESPACE@[27; 28)
@ -43,8 +44,9 @@ FILE@[0; 54)
WHITESPACE@[40; 41) WHITESPACE@[40; 41)
err: `expected R_BRACK` err: `expected R_BRACK`
FN_KW@[41; 43) FN_KW@[41; 43)
WHITESPACE@[43; 44) NAME@[43; 47)
IDENT@[44; 47) "foo" WHITESPACE@[43; 44)
IDENT@[44; 47) "foo"
L_PAREN@[47; 48) L_PAREN@[47; 48)
R_PAREN@[48; 49) R_PAREN@[48; 49)
WHITESPACE@[49; 50) WHITESPACE@[49; 50)

View file

@ -15,8 +15,9 @@ FILE@[0; 31)
WHITESPACE@[15; 17) WHITESPACE@[15; 17)
FN_ITEM@[17; 29) FN_ITEM@[17; 29)
FN_KW@[17; 19) FN_KW@[17; 19)
WHITESPACE@[19; 20) NAME@[19; 23)
IDENT@[20; 23) "foo" WHITESPACE@[19; 20)
IDENT@[20; 23) "foo"
L_PAREN@[23; 24) L_PAREN@[23; 24)
R_PAREN@[24; 25) R_PAREN@[24; 25)
L_CURLY@[25; 26) L_CURLY@[25; 26)

View file

@ -1,8 +1,9 @@
FILE@[0; 95) FILE@[0; 95)
FN_ITEM@[0; 14) FN_ITEM@[0; 14)
FN_KW@[0; 2) FN_KW@[0; 2)
WHITESPACE@[2; 3) NAME@[2; 6)
IDENT@[3; 6) "foo" WHITESPACE@[2; 3)
IDENT@[3; 6) "foo"
L_PAREN@[6; 7) L_PAREN@[6; 7)
R_PAREN@[7; 8) R_PAREN@[7; 8)
WHITESPACE@[8; 9) WHITESPACE@[8; 9)
@ -50,8 +51,9 @@ FILE@[0; 95)
WHITESPACE@[80; 82) WHITESPACE@[80; 82)
FN_ITEM@[82; 95) FN_ITEM@[82; 95)
FN_KW@[82; 84) FN_KW@[82; 84)
WHITESPACE@[84; 85) NAME@[84; 88)
IDENT@[85; 88) "baz" WHITESPACE@[84; 85)
IDENT@[85; 88) "baz"
L_PAREN@[88; 89) L_PAREN@[88; 89)
R_PAREN@[89; 90) R_PAREN@[89; 90)
WHITESPACE@[90; 91) WHITESPACE@[90; 91)

View file

@ -5,8 +5,9 @@ FILE@[0; 25)
UNSAFE_KW@[6; 12) UNSAFE_KW@[6; 12)
WHITESPACE@[12; 13) WHITESPACE@[12; 13)
FN_KW@[13; 15) FN_KW@[13; 15)
WHITESPACE@[15; 16) NAME@[15; 19)
IDENT@[16; 19) "foo" WHITESPACE@[15; 16)
IDENT@[16; 19) "foo"
L_PAREN@[19; 20) L_PAREN@[19; 20)
R_PAREN@[20; 21) R_PAREN@[20; 21)
WHITESPACE@[21; 22) WHITESPACE@[21; 22)

View file

@ -3,8 +3,9 @@ FILE@[0; 18)
CONST_KW@[0; 5) CONST_KW@[0; 5)
WHITESPACE@[5; 6) WHITESPACE@[5; 6)
FN_KW@[6; 8) FN_KW@[6; 8)
WHITESPACE@[8; 9) NAME@[8; 12)
IDENT@[9; 12) "foo" WHITESPACE@[8; 9)
IDENT@[9; 12) "foo"
L_PAREN@[12; 13) L_PAREN@[12; 13)
R_PAREN@[13; 14) R_PAREN@[13; 14)
WHITESPACE@[14; 15) WHITESPACE@[14; 15)

View file

@ -4,8 +4,9 @@ FILE@[0; 19)
EXTERN_KW@[0; 6) EXTERN_KW@[0; 6)
WHITESPACE@[6; 7) WHITESPACE@[6; 7)
FN_KW@[7; 9) FN_KW@[7; 9)
WHITESPACE@[9; 10) NAME@[9; 13)
IDENT@[10; 13) "foo" WHITESPACE@[9; 10)
IDENT@[10; 13) "foo"
L_PAREN@[13; 14) L_PAREN@[13; 14)
R_PAREN@[14; 15) R_PAREN@[14; 15)
WHITESPACE@[15; 16) WHITESPACE@[15; 16)

View file

@ -3,8 +3,9 @@ FILE@[0; 19)
UNSAFE_KW@[0; 6) UNSAFE_KW@[0; 6)
WHITESPACE@[6; 7) WHITESPACE@[6; 7)
FN_KW@[7; 9) FN_KW@[7; 9)
WHITESPACE@[9; 10) NAME@[9; 13)
IDENT@[10; 13) "foo" WHITESPACE@[9; 10)
IDENT@[10; 13) "foo"
L_PAREN@[13; 14) L_PAREN@[13; 14)
R_PAREN@[14; 15) R_PAREN@[14; 15)
WHITESPACE@[15; 16) WHITESPACE@[15; 16)

View file

@ -8,8 +8,9 @@ FILE@[0; 30)
STRING@[14; 17) STRING@[14; 17)
WHITESPACE@[17; 18) WHITESPACE@[17; 18)
FN_KW@[18; 20) FN_KW@[18; 20)
WHITESPACE@[20; 21) NAME@[20; 24)
IDENT@[21; 24) "foo" WHITESPACE@[20; 21)
IDENT@[21; 24) "foo"
L_PAREN@[24; 25) L_PAREN@[24; 25)
R_PAREN@[25; 26) R_PAREN@[25; 26)
WHITESPACE@[26; 27) WHITESPACE@[26; 27)

View file

@ -1,8 +1,9 @@
FILE@[0; 33) FILE@[0; 33)
FN_ITEM@[0; 11) FN_ITEM@[0; 11)
FN_KW@[0; 2) FN_KW@[0; 2)
WHITESPACE@[2; 3) NAME@[2; 6)
IDENT@[3; 6) "foo" WHITESPACE@[2; 3)
IDENT@[3; 6) "foo"
L_PAREN@[6; 7) L_PAREN@[6; 7)
R_PAREN@[7; 8) R_PAREN@[7; 8)
L_CURLY@[8; 9) L_CURLY@[8; 9)
@ -18,8 +19,9 @@ FILE@[0; 33)
WHITESPACE@[21; 22) WHITESPACE@[21; 22)
FN_ITEM@[22; 33) FN_ITEM@[22; 33)
FN_KW@[22; 24) FN_KW@[22; 24)
WHITESPACE@[24; 25) NAME@[24; 28)
IDENT@[25; 28) "bar" WHITESPACE@[24; 25)
IDENT@[25; 28) "bar"
L_PAREN@[28; 29) L_PAREN@[28; 29)
R_PAREN@[29; 30) R_PAREN@[29; 30)
L_CURLY@[30; 31) L_CURLY@[30; 31)

View file

@ -1,8 +1,9 @@
FILE@[0; 13) FILE@[0; 13)
FN_ITEM@[0; 13) FN_ITEM@[0; 13)
FN_KW@[0; 2) FN_KW@[0; 2)
WHITESPACE@[2; 3) NAME@[2; 6)
IDENT@[3; 6) "foo" WHITESPACE@[2; 3)
IDENT@[3; 6) "foo"
L_PAREN@[6; 7) L_PAREN@[6; 7)
R_PAREN@[7; 8) R_PAREN@[7; 8)
WHITESPACE@[8; 9) WHITESPACE@[8; 9)

View file

@ -23,8 +23,9 @@ FILE@[0; 118)
FN_ITEM@[26; 52) FN_ITEM@[26; 52)
WHITESPACE@[26; 31) WHITESPACE@[26; 31)
FN_KW@[31; 33) FN_KW@[31; 33)
WHITESPACE@[33; 34) NAME@[33; 37)
IDENT@[34; 37) "foo" WHITESPACE@[33; 34)
IDENT@[34; 37) "foo"
L_PAREN@[37; 38) L_PAREN@[37; 38)
R_PAREN@[38; 39) R_PAREN@[38; 39)
WHITESPACE@[39; 40) WHITESPACE@[39; 40)

View file

@ -19,8 +19,9 @@ FILE@[0; 35)
R_BRACK@[21; 22) R_BRACK@[21; 22)
WHITESPACE@[22; 23) WHITESPACE@[22; 23)
FN_KW@[23; 25) FN_KW@[23; 25)
WHITESPACE@[25; 26) NAME@[25; 29)
IDENT@[26; 29) "foo" WHITESPACE@[25; 26)
IDENT@[26; 29) "foo"
L_PAREN@[29; 30) L_PAREN@[29; 30)
R_PAREN@[30; 31) R_PAREN@[30; 31)
WHITESPACE@[31; 32) WHITESPACE@[31; 32)

View file

@ -1,8 +1,9 @@
FILE@[0; 98) FILE@[0; 98)
FN_ITEM@[0; 10) FN_ITEM@[0; 10)
FN_KW@[0; 2) FN_KW@[0; 2)
WHITESPACE@[2; 3) NAME@[2; 4)
IDENT@[3; 4) "a" WHITESPACE@[2; 3)
IDENT@[3; 4) "a"
L_PAREN@[4; 5) L_PAREN@[4; 5)
R_PAREN@[5; 6) R_PAREN@[5; 6)
WHITESPACE@[6; 7) WHITESPACE@[6; 7)
@ -14,8 +15,9 @@ FILE@[0; 98)
PUB_KW@[10; 13) PUB_KW@[10; 13)
WHITESPACE@[13; 14) WHITESPACE@[13; 14)
FN_KW@[14; 16) FN_KW@[14; 16)
WHITESPACE@[16; 17) NAME@[16; 18)
IDENT@[17; 18) "b" WHITESPACE@[16; 17)
IDENT@[17; 18) "b"
L_PAREN@[18; 19) L_PAREN@[18; 19)
R_PAREN@[19; 20) R_PAREN@[19; 20)
WHITESPACE@[20; 21) WHITESPACE@[20; 21)
@ -30,8 +32,9 @@ FILE@[0; 98)
R_PAREN@[33; 34) R_PAREN@[33; 34)
WHITESPACE@[34; 35) WHITESPACE@[34; 35)
FN_KW@[35; 37) FN_KW@[35; 37)
WHITESPACE@[37; 38) NAME@[37; 39)
IDENT@[38; 39) "c" WHITESPACE@[37; 38)
IDENT@[38; 39) "c"
L_PAREN@[39; 40) L_PAREN@[39; 40)
R_PAREN@[40; 41) R_PAREN@[40; 41)
WHITESPACE@[41; 42) WHITESPACE@[41; 42)
@ -46,8 +49,9 @@ FILE@[0; 98)
R_PAREN@[54; 55) R_PAREN@[54; 55)
WHITESPACE@[55; 56) WHITESPACE@[55; 56)
FN_KW@[56; 58) FN_KW@[56; 58)
WHITESPACE@[58; 59) NAME@[58; 60)
IDENT@[59; 60) "d" WHITESPACE@[58; 59)
IDENT@[59; 60) "d"
L_PAREN@[60; 61) L_PAREN@[60; 61)
R_PAREN@[61; 62) R_PAREN@[61; 62)
WHITESPACE@[62; 63) WHITESPACE@[62; 63)
@ -74,8 +78,9 @@ FILE@[0; 98)
R_PAREN@[86; 87) R_PAREN@[86; 87)
WHITESPACE@[87; 88) WHITESPACE@[87; 88)
FN_KW@[88; 90) FN_KW@[88; 90)
WHITESPACE@[90; 91) NAME@[90; 92)
IDENT@[91; 92) "e" WHITESPACE@[90; 91)
IDENT@[91; 92) "e"
L_PAREN@[92; 93) L_PAREN@[92; 93)
R_PAREN@[93; 94) R_PAREN@[93; 94)
WHITESPACE@[94; 95) WHITESPACE@[94; 95)

View file

@ -13,8 +13,9 @@ FILE@[0; 23)
R_BRACK@[9; 10) R_BRACK@[9; 10)
WHITESPACE@[10; 11) WHITESPACE@[10; 11)
FN_KW@[11; 13) FN_KW@[11; 13)
WHITESPACE@[13; 14) NAME@[13; 17)
IDENT@[14; 17) "foo" WHITESPACE@[13; 14)
IDENT@[14; 17) "foo"
L_PAREN@[17; 18) L_PAREN@[17; 18)
R_PAREN@[18; 19) R_PAREN@[18; 19)
WHITESPACE@[19; 20) WHITESPACE@[19; 20)

View file

@ -4,8 +4,9 @@ FILE@[0; 71)
EXTERN_KW@[0; 6) EXTERN_KW@[0; 6)
WHITESPACE@[6; 7) WHITESPACE@[6; 7)
FN_KW@[7; 9) FN_KW@[7; 9)
WHITESPACE@[9; 10) NAME@[9; 13)
IDENT@[10; 13) "foo" WHITESPACE@[9; 10)
IDENT@[10; 13) "foo"
L_PAREN@[13; 14) L_PAREN@[13; 14)
R_PAREN@[14; 15) R_PAREN@[14; 15)
WHITESPACE@[15; 16) WHITESPACE@[15; 16)
@ -20,8 +21,9 @@ FILE@[0; 71)
STRING@[28; 31) STRING@[28; 31)
WHITESPACE@[31; 32) WHITESPACE@[31; 32)
FN_KW@[32; 34) FN_KW@[32; 34)
WHITESPACE@[34; 35) NAME@[34; 38)
IDENT@[35; 38) "bar" WHITESPACE@[34; 35)
IDENT@[35; 38) "bar"
L_PAREN@[38; 39) L_PAREN@[38; 39)
R_PAREN@[39; 40) R_PAREN@[39; 40)
WHITESPACE@[40; 41) WHITESPACE@[40; 41)
@ -36,8 +38,9 @@ FILE@[0; 71)
RAW_STRING@[53; 57) RAW_STRING@[53; 57)
WHITESPACE@[57; 58) WHITESPACE@[57; 58)
FN_KW@[58; 60) FN_KW@[58; 60)
WHITESPACE@[60; 61) NAME@[60; 64)
IDENT@[61; 64) "baz" WHITESPACE@[60; 61)
IDENT@[61; 64) "baz"
L_PAREN@[64; 65) L_PAREN@[64; 65)
R_PAREN@[65; 66) R_PAREN@[65; 66)
WHITESPACE@[66; 67) WHITESPACE@[66; 67)