@@ -263,10 +263,10 @@ pub mod printf {
263
263
}
264
264
265
265
/// Returns an iterator over all substitutions in a given string.
266
- pub fn iter_subs ( s : & str ) -> Substitutions < ' _ > {
266
+ pub fn iter_subs ( s : & str , start_pos : usize ) -> Substitutions < ' _ > {
267
267
Substitutions {
268
268
s,
269
- pos : 0 ,
269
+ pos : start_pos ,
270
270
}
271
271
}
272
272
@@ -711,7 +711,7 @@ pub mod printf {
711
711
#[ test]
712
712
fn test_iter ( ) {
713
713
let s = "The %d'th word %% is: `%.*s` %!\n " ;
714
- let subs: Vec < _ > = iter_subs ( s) . map ( |sub| sub. translate ( ) ) . collect ( ) ;
714
+ let subs: Vec < _ > = iter_subs ( s, 0 ) . map ( |sub| sub. translate ( ) ) . collect ( ) ;
715
715
assert_eq ! (
716
716
subs. iter( ) . map( |ms| ms. as_ref( ) . map( |s| & s[ ..] ) ) . collect:: <Vec <_>>( ) ,
717
717
vec![ Some ( "{}" ) , None , Some ( "{:.*}" ) , None ]
@@ -804,10 +804,10 @@ pub mod shell {
804
804
}
805
805
806
806
/// Returns an iterator over all substitutions in a given string.
807
- pub fn iter_subs ( s : & str ) -> Substitutions < ' _ > {
807
+ pub fn iter_subs ( s : & str , start_pos : usize ) -> Substitutions < ' _ > {
808
808
Substitutions {
809
809
s,
810
- pos : 0 ,
810
+ pos : start_pos ,
811
811
}
812
812
}
813
813
@@ -940,7 +940,7 @@ pub mod shell {
940
940
fn test_iter ( ) {
941
941
use super :: iter_subs;
942
942
let s = "The $0'th word $$ is: `$WORD` $!\n " ;
943
- let subs: Vec < _ > = iter_subs ( s) . map ( |sub| sub. translate ( ) ) . collect ( ) ;
943
+ let subs: Vec < _ > = iter_subs ( s, 0 ) . map ( |sub| sub. translate ( ) ) . collect ( ) ;
944
944
assert_eq ! (
945
945
subs. iter( ) . map( |ms| ms. as_ref( ) . map( |s| & s[ ..] ) ) . collect:: <Vec <_>>( ) ,
946
946
vec![ Some ( "{0}" ) , None , Some ( "{WORD}" ) ]
0 commit comments