File tree Expand file tree Collapse file tree 3 files changed +9
-1
lines changed Expand file tree Collapse file tree 3 files changed +9
-1
lines changed Original file line number Diff line number Diff line change @@ -389,7 +389,12 @@ fn next_token_inner(rdr: reader) -> token::token {
389
389
if rdr. curr == '=' {
390
390
rdr. bump ( ) ;
391
391
ret token:: EQEQ ;
392
- } else { ret token:: EQ ; }
392
+ } else if rdr. curr == '>' {
393
+ rdr. bump ( ) ;
394
+ ret token:: FAT_ARROW ;
395
+ } else {
396
+ ret token:: EQ ;
397
+ }
393
398
}
394
399
'!' {
395
400
rdr. bump ( ) ;
Original file line number Diff line number Diff line change @@ -1281,6 +1281,7 @@ class parser {
1281
1281
let pats = self . parse_pats ( ) ;
1282
1282
let mut guard = none;
1283
1283
if self . eat_keyword ( "if" ) { guard = some ( self . parse_expr ( ) ) ; }
1284
+ if self . token == token:: FAT_ARROW { self . bump ( ) ; }
1284
1285
let blk = self . parse_block ( ) ;
1285
1286
arms += [ { pats: pats, guard: guard, body: blk} ] ;
1286
1287
}
Original file line number Diff line number Diff line change @@ -45,6 +45,7 @@ enum token {
45
45
RARROW ,
46
46
LARROW ,
47
47
DARROW ,
48
+ FAT_ARROW ,
48
49
LPAREN ,
49
50
RPAREN ,
50
51
LBRACKET ,
@@ -111,6 +112,7 @@ fn to_str(in: interner<str>, t: token) -> str {
111
112
RARROW { ret "->" ; }
112
113
LARROW { ret "<-" ; }
113
114
DARROW { ret "<->" ; }
115
+ FAT_ARROW { ret "=>" ; }
114
116
LPAREN { ret "(" ; }
115
117
RPAREN { ret ")" ; }
116
118
LBRACKET { ret "[" ; }
You can’t perform that action at this time.
0 commit comments