Skip to content

Instantly share code, notes, and snippets.

@KiaraGrouwstra
Created February 17, 2017 19:55
Show Gist options
  • Save KiaraGrouwstra/69134e67df1d78bc4633dde4826a2a4b to your computer and use it in GitHub Desktop.
Save KiaraGrouwstra/69134e67df1d78bc4633dde4826a2a4b to your computer and use it in GitHub Desktop.
point-free ES6 iterator manipulation
// install repos: https://github.com/jb55/javascript-iterators/wiki/Registry
const iterator = R.map({
map: require('map-iterator'),
filter: require('filter-iterator'),
groupBy: require('groupby-iterator'),
sortBy: require('sortby-iterator'),
concat: require('concat-iterator'),
skip: require('skip-iterator'),
take: require('take-iterator'),
unshift: require('unshift-iterator'),
reduce: require('reduce-iterator'),
length: require('iterator-length'),
str: require('str-iterator'),
toArray: require('toarray-iterator'),
toStream: require('iterator-stream'),
})(R.curry);
// usage: R.pipe(iterator.filter(isEven), iterator.take(2))(myIterator);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment