@@ -260,23 +260,19 @@ fn convert_tokens<C: TokenConvertor>(conv: &mut C) -> tt::Subtree {
260
260
IDENT => make_leaf ! ( Ident ) ,
261
261
UNDERSCORE => make_leaf ! ( Ident ) ,
262
262
k if k. is_keyword ( ) => make_leaf ! ( Ident ) ,
263
- FLOAT_NUMBER_PART => {
263
+ FLOAT_NUMBER_START_0 | FLOAT_NUMBER_START_1 | FLOAT_NUMBER_START_2 => {
264
264
// Reassemble a split-up float token.
265
265
let mut range = range;
266
266
let mut text = token. to_text ( conv) . to_string ( ) ;
267
- if let Some ( dot) = conv. peek ( ) {
268
- if dot. kind ( conv) == DOT {
269
- let ( _, dot_range) = conv. bump ( ) . unwrap ( ) ;
270
- text += & * dot. to_text ( conv) ;
271
- range = TextRange :: new ( range. start ( ) , dot_range. end ( ) ) ;
272
-
273
- if let Some ( tail) = conv. peek ( ) {
274
- if tail. kind ( conv) == FLOAT_NUMBER_PART {
275
- let ( _, tail_range) = conv. bump ( ) . unwrap ( ) ;
276
- text += & * tail. to_text ( conv) ;
277
- range = TextRange :: new ( range. start ( ) , tail_range. end ( ) ) ;
278
- }
279
- }
267
+ if kind == FLOAT_NUMBER_START_1 || kind == FLOAT_NUMBER_START_2 {
268
+ let ( dot, dot_range) = conv. bump ( ) . unwrap ( ) ;
269
+ text += & * dot. to_text ( conv) ;
270
+ range = TextRange :: new ( range. start ( ) , dot_range. end ( ) ) ;
271
+
272
+ if kind == FLOAT_NUMBER_START_2 {
273
+ let ( tail, tail_range) = conv. bump ( ) . unwrap ( ) ;
274
+ text += & * tail. to_text ( conv) ;
275
+ range = TextRange :: new ( range. start ( ) , tail_range. end ( ) ) ;
280
276
}
281
277
}
282
278
0 commit comments