Skip to content

Commit

Permalink
auto merge of #6886 : jld/rust/vec-each-ret-fix, r=sanxiyn
Browse files Browse the repository at this point in the history
  • Loading branch information
bors committed Jun 4, 2013
2 parents af418f2 + c5d7a77 commit 133d451
Showing 1 changed file with 19 additions and 2 deletions.
21 changes: 19 additions & 2 deletions src/libstd/vec.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1564,7 +1564,7 @@ pub fn each<'r,T>(v: &'r [T], f: &fn(&'r T) -> bool) -> bool {
}
broke = n > 0;
}
return true;
return !broke;
}

/// Like `each()`, but for the case where you have
Expand All @@ -1586,7 +1586,7 @@ pub fn each_mut<'r,T>(v: &'r mut [T], f: &fn(elem: &'r mut T) -> bool) -> bool {
}
broke = n > 0;
}
return broke;
return !broke;
}

/// Like `each()`, but for the case where you have a vector that *may or may
Expand Down Expand Up @@ -3598,6 +3598,23 @@ mod tests {
}
}

#[test]
fn test_each_ret_len0() {
let mut a0 : [int, .. 0] = [];
assert_eq!(each(a0, |_p| fail!()), true);
assert_eq!(each_mut(a0, |_p| fail!()), true);
}

#[test]
fn test_each_ret_len1() {
let mut a1 = [17];
assert_eq!(each(a1, |_p| true), true);
assert_eq!(each_mut(a1, |_p| true), true);
assert_eq!(each(a1, |_p| false), false);
assert_eq!(each_mut(a1, |_p| false), false);
}


#[test]
fn test_each_permutation() {
let mut results: ~[~[int]];
Expand Down

0 comments on commit 133d451

Please sign in to comment.