Parse crate paths in expressions

This commit is contained in:
Aleksey Kladov 2018-10-15 20:52:56 +03:00
parent bb298158eb
commit 376639c70f
3 changed files with 45 additions and 1 deletions

View file

@ -30,7 +30,7 @@ pub(super) const ATOM_EXPR_FIRST: TokenSet =
token_set_union![
LITERAL_FIRST,
token_set![L_CURLY, L_PAREN, L_BRACK, PIPE, MOVE_KW, IF_KW, WHILE_KW, MATCH_KW, UNSAFE_KW,
RETURN_KW, IDENT, SELF_KW, SUPER_KW, COLONCOLON, BREAK_KW, CONTINUE_KW, LIFETIME ],
RETURN_KW, IDENT, SELF_KW, SUPER_KW, CRATE_KW, COLONCOLON, BREAK_KW, CONTINUE_KW, LIFETIME ],
];
const EXPR_RECOVERY_SET: TokenSet =

View file

@ -0,0 +1,3 @@
fn main() {
make_query(crate::module_map::module_tree);
}

View file

@ -0,0 +1,41 @@
ROOT@[0; 62)
FN_DEF@[0; 61)
FN_KW@[0; 2)
WHITESPACE@[2; 3)
NAME@[3; 7)
IDENT@[3; 7) "main"
PARAM_LIST@[7; 9)
L_PAREN@[7; 8)
R_PAREN@[8; 9)
WHITESPACE@[9; 10)
BLOCK@[10; 61)
L_CURLY@[10; 11)
WHITESPACE@[11; 16)
EXPR_STMT@[16; 59)
CALL_EXPR@[16; 58)
PATH_EXPR@[16; 26)
PATH@[16; 26)
PATH_SEGMENT@[16; 26)
NAME_REF@[16; 26)
IDENT@[16; 26) "make_query"
ARG_LIST@[26; 58)
L_PAREN@[26; 27)
PATH_EXPR@[27; 57)
PATH@[27; 57)
PATH@[27; 44)
PATH@[27; 32)
PATH_SEGMENT@[27; 32)
CRATE_KW@[27; 32)
COLONCOLON@[32; 34)
PATH_SEGMENT@[34; 44)
NAME_REF@[34; 44)
IDENT@[34; 44) "module_map"
COLONCOLON@[44; 46)
PATH_SEGMENT@[46; 57)
NAME_REF@[46; 57)
IDENT@[46; 57) "module_tree"
R_PAREN@[57; 58)
SEMI@[58; 59)
WHITESPACE@[59; 60)
R_CURLY@[60; 61)
WHITESPACE@[61; 62)