@@ -571,7 +571,7 @@ pub struct EscapeDefault {
571
571
572
572
#[ derive( Clone ) ]
573
573
enum EscapeDefaultState {
574
- Done ,
574
+ Done ( char ) ,
575
575
Char ( char ) ,
576
576
Backslash ( char ) ,
577
577
Unicode ( EscapeUnicode ) ,
@@ -588,10 +588,10 @@ impl Iterator for EscapeDefault {
588
588
Some ( '\\' )
589
589
}
590
590
EscapeDefaultState :: Char ( c) => {
591
- self . state = EscapeDefaultState :: Done ;
591
+ self . state = EscapeDefaultState :: Done ( c ) ;
592
592
Some ( c)
593
593
}
594
- EscapeDefaultState :: Done => None ,
594
+ EscapeDefaultState :: Done ( _ ) => None ,
595
595
EscapeDefaultState :: Unicode ( ref mut iter) => iter. next ( ) ,
596
596
}
597
597
}
@@ -614,31 +614,31 @@ impl Iterator for EscapeDefault {
614
614
Some ( '\\' )
615
615
} ,
616
616
EscapeDefaultState :: Backslash ( c) if n == 1 => {
617
- self . state = EscapeDefaultState :: Done ;
617
+ self . state = EscapeDefaultState :: Done ( c ) ;
618
618
Some ( c)
619
619
} ,
620
- EscapeDefaultState :: Backslash ( _ ) => {
621
- self . state = EscapeDefaultState :: Done ;
620
+ EscapeDefaultState :: Backslash ( c ) => {
621
+ self . state = EscapeDefaultState :: Done ( c ) ;
622
622
None
623
623
} ,
624
624
EscapeDefaultState :: Char ( c) => {
625
- self . state = EscapeDefaultState :: Done ;
625
+ self . state = EscapeDefaultState :: Done ( c ) ;
626
626
627
627
if n == 0 {
628
628
Some ( c)
629
629
} else {
630
630
None
631
631
}
632
632
} ,
633
- EscapeDefaultState :: Done => return None ,
633
+ EscapeDefaultState :: Done ( _ ) => return None ,
634
634
EscapeDefaultState :: Unicode ( ref mut i) => return i. nth ( n) ,
635
635
}
636
636
}
637
637
638
638
fn last ( self ) -> Option < char > {
639
639
match self . state {
640
640
EscapeDefaultState :: Unicode ( iter) => iter. last ( ) ,
641
- EscapeDefaultState :: Done => None ,
641
+ EscapeDefaultState :: Done ( _ ) => None ,
642
642
EscapeDefaultState :: Backslash ( c) | EscapeDefaultState :: Char ( c) => Some ( c) ,
643
643
}
644
644
}
@@ -648,7 +648,7 @@ impl Iterator for EscapeDefault {
648
648
impl ExactSizeIterator for EscapeDefault {
649
649
fn len ( & self ) -> usize {
650
650
match self . state {
651
- EscapeDefaultState :: Done => 0 ,
651
+ EscapeDefaultState :: Done ( _ ) => 0 ,
652
652
EscapeDefaultState :: Char ( _) => 1 ,
653
653
EscapeDefaultState :: Backslash ( _) => 2 ,
654
654
EscapeDefaultState :: Unicode ( ref iter) => iter. len ( ) ,
0 commit comments