UNPKG

linq-iterator

Version:

linq.js - LINQ for JavaScript with iterator support

33 lines (30 loc) 772 B
var linq = require('linq'); if(!linq.prototype[Symbol.iterator]) { linq.prototype[Symbol.iterator] = function() { var enumerator = this.getEnumerator(); return { next: function() { if(enumerator.moveNext()) { return { done: false, value: enumerator.current() }; } else return { done: true }; } } } } var extendIt = true; linq.extendArray = function() { if(extendIt) { extendIt = false; Object.keys(linq.prototype).forEach(function(key) { if(Array.prototype[key]) return; Array.prototype[key] = function() { var l = linq.from(this); return l[key].apply(l, arguments); } }); } } module.exports = linq;