File tree 1 file changed +8
-8
lines changed
1 file changed +8
-8
lines changed Original file line number Diff line number Diff line change @@ -148,27 +148,27 @@ mod par {
148
148
xs : & [ A ] ,
149
149
fn_factory : & fn ( ) -> ~fn ( uint , & A ) -> bool ) -> bool
150
150
{
151
- do vec :: all ( map_slices ( xs, || {
151
+ let mapped = map_slices ( xs, || {
152
152
let f = fn_factory ( ) ;
153
153
let result: ~fn ( uint , & [ A ] ) -> bool = |base, slice| {
154
- vec:: alli ( slice, |i, x| {
155
- f ( i + base, x)
156
- } )
154
+ slice. iter ( ) . enumerate ( ) . all ( |( i, x) | f ( i + base, x) )
157
155
} ;
158
156
result
159
- } ) ) |x| { * x }
157
+ } ) ;
158
+ mapped. iter ( ) . all ( |& x| x)
160
159
}
161
160
162
161
/// Returns true if the function holds for any elements in the vector.
163
162
pub fn any < A : Copy + Owned > (
164
163
xs : & [ A ] ,
165
164
fn_factory : & fn ( ) -> ~fn ( & A ) -> bool ) -> bool {
166
- do vec :: any ( map_slices ( xs, || {
165
+ let mapped = map_slices ( xs, || {
167
166
let f = fn_factory ( ) ;
168
167
let result: ~fn ( uint , & [ A ] ) -> bool =
169
- |_, slice| vec :: any ( slice, |x| f ( x ) ) ;
168
+ |_, slice| slice. iter ( ) . any ( f ) ;
170
169
result
171
- } ) ) |x| { * x }
170
+ } ) ;
171
+ mapped. iter ( ) . any ( |& x| x)
172
172
}
173
173
}
174
174
You can’t perform that action at this time.
0 commit comments