@@ -180,7 +180,10 @@ impl<'a> SegmentIter<'a> {
180180 self . current_index += 1 ;
181181 self . tracing_index = self . current_index ;
182182 }
183- _ => self . current_index += 1 ,
183+ _ => match memchr:: memchr2 ( b',' , b';' , & self . mapping_str [ self . current_index ..] ) {
184+ Some ( index) => self . current_index += index,
185+ None => self . current_index = mapping_str_len,
186+ } ,
184187 }
185188
186189 if self . current_index == mapping_str_len {
@@ -461,20 +464,20 @@ fn stream_chunks_of_source_map_final<'a>(
461464 on_name ( i as u32 , Cow :: Borrowed ( name) ) ;
462465 }
463466 let mut mapping_active_line = 0 ;
464- let mut on_mapping = |mapping : & Mapping | {
467+ let mut on_mapping = |mapping : Mapping | {
465468 if mapping. generated_line >= result. generated_line
466469 && ( mapping. generated_column >= result. generated_column
467470 || mapping. generated_line > result. generated_line )
468471 {
469472 return ;
470473 }
471- if let Some ( original) = & mapping. original {
474+ if let Some ( original) = mapping. original {
472475 on_chunk (
473476 None ,
474477 Mapping {
475478 generated_line : mapping. generated_line ,
476479 generated_column : mapping. generated_column ,
477- original : Some ( * original) ,
480+ original : Some ( original) ,
478481 } ,
479482 ) ;
480483 mapping_active_line = mapping. generated_line ;
@@ -490,7 +493,7 @@ fn stream_chunks_of_source_map_final<'a>(
490493 }
491494 } ;
492495 for mapping in source_map. decoded_mappings ( ) {
493- on_mapping ( & mapping) ;
496+ on_mapping ( mapping) ;
494497 }
495498 result
496499}
@@ -622,29 +625,19 @@ fn stream_chunks_of_source_map_lines_final<'a>(
622625 } ;
623626 let mut current_generated_line = 1 ;
624627
625- let mut on_mapping = |mapping : & Mapping | {
626- if let Some ( original) = & mapping. original . filter ( |_| {
628+ let mut on_mapping = |mut mapping : Mapping | {
629+ if let Some ( mut original) = mapping. original . filter ( |_| {
627630 current_generated_line <= mapping. generated_line
628631 && mapping. generated_line <= final_line
629632 } ) {
630- on_chunk (
631- None ,
632- Mapping {
633- generated_line : mapping. generated_line ,
634- generated_column : 0 ,
635- original : Some ( OriginalLocation {
636- source_index : original. source_index ,
637- original_line : original. original_line ,
638- original_column : original. original_column ,
639- name_index : None ,
640- } ) ,
641- } ,
642- ) ;
633+ mapping. generated_column = 0 ;
634+ original. name_index = None ;
643635 current_generated_line = mapping. generated_line + 1 ;
636+ on_chunk ( None , mapping) ;
644637 }
645638 } ;
646639 for mapping in source_map. decoded_mappings ( ) {
647- on_mapping ( & mapping) ;
640+ on_mapping ( mapping) ;
648641 }
649642 result
650643}
@@ -671,7 +664,7 @@ fn stream_chunks_of_source_map_lines_full<'a>(
671664 )
672665 }
673666 let mut current_generated_line = 1 ;
674- let mut on_mapping = |mapping : & Mapping | {
667+ let mut on_mapping = |mut mapping : Mapping | {
675668 if mapping. original . is_none ( )
676669 || mapping. generated_line < current_generated_line
677670 || mapping. generated_line as usize > lines. len ( )
@@ -692,29 +685,19 @@ fn stream_chunks_of_source_map_lines_full<'a>(
692685 }
693686 current_generated_line += 1 ;
694687 }
695- if let Some ( original) = & mapping
688+ if let Some ( mut original) = mapping
696689 . original
697690 . filter ( |_| mapping. generated_line as usize <= lines. len ( ) )
698691 {
699692 let chunk = lines[ current_generated_line as usize - 1 ] ;
700- on_chunk (
701- Some ( Cow :: Borrowed ( chunk) ) ,
702- Mapping {
703- generated_line : mapping. generated_line ,
704- generated_column : 0 ,
705- original : Some ( OriginalLocation {
706- source_index : original. source_index ,
707- original_line : original. original_line ,
708- original_column : original. original_column ,
709- name_index : None ,
710- } ) ,
711- } ,
712- ) ;
693+ mapping. generated_column = 0 ;
694+ original. name_index = None ;
695+ on_chunk ( Some ( Cow :: Borrowed ( chunk) ) , mapping) ;
713696 current_generated_line += 1 ;
714697 }
715698 } ;
716699 for mapping in source_map. decoded_mappings ( ) {
717- on_mapping ( & mapping) ;
700+ on_mapping ( mapping) ;
718701 }
719702 while current_generated_line as usize <= lines. len ( ) {
720703 let chunk = lines[ current_generated_line as usize - 1 ] ;
0 commit comments