This repository was archived by the owner on May 28, 2025. It is now read-only.
File tree Expand file tree Collapse file tree 3 files changed +119
-3
lines changed
test_data/parser/inline/ok Expand file tree Collapse file tree 3 files changed +119
-3
lines changed Original file line number Diff line number Diff line change @@ -40,11 +40,19 @@ fn generic_arg(p: &mut Parser) {
4040 name_ref ( p) ;
4141 opt_generic_arg_list ( p, false ) ;
4242 match p. current ( ) {
43- // test assoc_type_eq
44- // type T = StreamingIterator<Item<'a> = &'a T>;
4543 T ! [ =] => {
4644 p. bump_any ( ) ;
47- types:: type_ ( p) ;
45+ if types:: TYPE_FIRST . contains ( p. current ( ) ) {
46+ // test assoc_type_eq
47+ // type T = StreamingIterator<Item<'a> = &'a T>;
48+ types:: type_ ( p) ;
49+ } else {
50+ // test assoc_const_eq
51+ // fn foo<F: Foo<N=3>>() {}
52+ // const TEST: usize = 3;
53+ // fn bar<F: Foo<N={TEST}>>() {}
54+ const_arg ( p) ;
55+ }
4856 m. complete ( p, ASSOC_TYPE_ARG ) ;
4957 }
5058 // test assoc_type_bound
Original file line number Diff line number Diff line change 1+ SOURCE_FILE
2+ FN
3+ FN_KW "fn"
4+ WHITESPACE " "
5+ NAME
6+ IDENT "foo"
7+ GENERIC_PARAM_LIST
8+ L_ANGLE "<"
9+ TYPE_PARAM
10+ NAME
11+ IDENT "F"
12+ COLON ":"
13+ WHITESPACE " "
14+ TYPE_BOUND_LIST
15+ TYPE_BOUND
16+ PATH_TYPE
17+ PATH
18+ PATH_SEGMENT
19+ NAME_REF
20+ IDENT "Foo"
21+ GENERIC_ARG_LIST
22+ L_ANGLE "<"
23+ ASSOC_TYPE_ARG
24+ NAME_REF
25+ IDENT "N"
26+ EQ "="
27+ CONST_ARG
28+ LITERAL
29+ INT_NUMBER "3"
30+ R_ANGLE ">"
31+ R_ANGLE ">"
32+ PARAM_LIST
33+ L_PAREN "("
34+ R_PAREN ")"
35+ WHITESPACE " "
36+ BLOCK_EXPR
37+ STMT_LIST
38+ L_CURLY "{"
39+ R_CURLY "}"
40+ WHITESPACE "\n"
41+ CONST
42+ CONST_KW "const"
43+ WHITESPACE " "
44+ NAME
45+ IDENT "TEST"
46+ COLON ":"
47+ WHITESPACE " "
48+ PATH_TYPE
49+ PATH
50+ PATH_SEGMENT
51+ NAME_REF
52+ IDENT "usize"
53+ WHITESPACE " "
54+ EQ "="
55+ WHITESPACE " "
56+ LITERAL
57+ INT_NUMBER "3"
58+ SEMICOLON ";"
59+ WHITESPACE "\n"
60+ FN
61+ FN_KW "fn"
62+ WHITESPACE " "
63+ NAME
64+ IDENT "bar"
65+ GENERIC_PARAM_LIST
66+ L_ANGLE "<"
67+ TYPE_PARAM
68+ NAME
69+ IDENT "F"
70+ COLON ":"
71+ WHITESPACE " "
72+ TYPE_BOUND_LIST
73+ TYPE_BOUND
74+ PATH_TYPE
75+ PATH
76+ PATH_SEGMENT
77+ NAME_REF
78+ IDENT "Foo"
79+ GENERIC_ARG_LIST
80+ L_ANGLE "<"
81+ ASSOC_TYPE_ARG
82+ NAME_REF
83+ IDENT "N"
84+ EQ "="
85+ CONST_ARG
86+ BLOCK_EXPR
87+ STMT_LIST
88+ L_CURLY "{"
89+ PATH_EXPR
90+ PATH
91+ PATH_SEGMENT
92+ NAME_REF
93+ IDENT "TEST"
94+ R_CURLY "}"
95+ R_ANGLE ">"
96+ R_ANGLE ">"
97+ PARAM_LIST
98+ L_PAREN "("
99+ R_PAREN ")"
100+ WHITESPACE " "
101+ BLOCK_EXPR
102+ STMT_LIST
103+ L_CURLY "{"
104+ R_CURLY "}"
105+ WHITESPACE "\n"
Original file line number Diff line number Diff line change 1+ fn foo < F : Foo < N =3 > > ( ) { }
2+ const TEST : usize = 3 ;
3+ fn bar < F : Foo < N ={ TEST } > > ( ) { }
You can’t perform that action at this time.
0 commit comments