Closed
Description
openedon Jun 8, 2024
Description
This RFC proposes adding the package @stdlib/array/base/cuevery-by-right
, which cumulatively tests whether every array element in a provided array passes a test implemented by a predicate function, while iterating from right-to-left. The function should return a new generic array. The package should also provide an #assign
API for setting output values in a provided output array.
function isPositive( value ) {
return ( value > 0 );
}
var x = [ 0, 0, 1, 1, 1 ];
var y1 = cueveryByRight( x, isPositive );
// returns [ true, true, true, false, false ]
var y2 = [ false, null, false, null, false, null, false, null, false, null ];
var out = cueveryByRight.assign( x, y2, 2, 0, isPositive );
// returns [ true, null, true, null, true, null, false, null, false, null ]
var bool = ( out === y2 );
// returns true
where the assign
API supports an offset and stride (see, e.g., @stdlib/array/base/take
). Note that, by iterating from right to left, the values in the output array are equivalent to having first reversed the input array x
and then using left-to-right iteration.
Both APIs should support accessor arrays (see, e.g., @stdlib/array/base/take
).
Related Issues
No.
Questions
No.
Other
- See also
@stdlib/array/base/every-by-right
Checklist
- I have read and understood the Code of Conduct.
- Searched for existing issues and pull requests.
- The issue name begins with
RFC:
.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Metadata
Assignees
Labels
RFC feature request which has been accepted.Issue or pull request for adding a new feature.A good first issue for new contributors!Issue involves or relates to JavaScript.Request for comments. Feature requests and proposed changes.May require some initial design or R&D, but should be straightforward to resolve and/or implement.Normal priority concern or feature request.