Rewrite all() and any() to store and return the predicate's result directly, matching && and || semantics. Update documentation to describe the new behavior. Move tests from test/core/list/ to test/core/sequence/ and add cases verifying that the first falsey/truthy value is returned.
11 lines
317 B
Plaintext
11 lines
317 B
Plaintext
var a = [1, 2, 3]
|
|
IO.print(a.any {|x| x > 3 }) // expect: false
|
|
IO.print(a.any {|x| x > 1 }) // expect: true
|
|
IO.print([].any {|x| true }) // expect: false
|
|
|
|
// Returns first truthy value.
|
|
IO.print(a.any {|x| x }) // expect: 1
|
|
|
|
// Returns last falsey value.
|
|
IO.print(a.any {|x| x < 2 ? null : false }) // expect: false
|