Skip to content

An implemenation of LINQ using ES6 generators and iterators

License

Notifications You must be signed in to change notification settings

schmuli/linq.es6

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LINQ in ES6

An implementation of LINQ using features available in ES6, such as Iterators and Generators.

Enabling ES6

The implementation uses ES6 features available in Chrome Canary, and will be updated (hopefully) when newer features are supported in Chrome Canary.

Browsers

Support Chrome Canary

Enabling Experimental JavaScript features

Node.js with V8

Enabling Harmony flag

Getting Linq.es6

NPM

Bower

Nuget

Examples

Supported LINQ Functions

Creation Functions

  • asEnumerable(array)
  • range(start, count)
  • repeat(value, count)
  • empty()

Immediate Functions

  • all(predicate)
  • any(predicate?)
  • count(predicate?)
  • first(predicate?)
  • forEach(fn)
  • last(predicate?)
  • reduce(fn, initialValue?, resultSelector?)
  • single(predicate?)
  • toArray()

Lazy Functions

  • concat(collection)
  • defaultIfEmpty(defaultValue?)
  • reverse()
  • select(predicate)
  • selectMany(collectionSelector, resultSelector?)
  • skip(count)
  • skipWhile(predicate)
  • where(predicate)
  • take(count)
  • takeWhile(predicate)

Building and Testing

Karma

About

An implemenation of LINQ using ES6 generators and iterators

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published