iterable-utilities

A bunch of utilities for working with iterables, many inspired by the native array methods.

MIT License

Downloads
175
Stars
8
Committers
1
iterable-utilities - Stdlib testing dependency version bump Latest Release

Published by scarf005 11 months ago

Changed

  • bumped testing dependency version
iterable-utilities - lint and format CHANGELOG.md

Published by scarf005 12 months ago

Changed

  • lint and format CHANGELOG.md
iterable-utilities - Fix npm releases due to stale version string

Published by scarf005 12 months ago

Changed

  • bumped version to fix NPM release
iterable-utilities - `takeWhile` , `dropWhile`, and more!

Published by scarf005 12 months ago

Added

Many equivalents to Kotlin standard library were added 🎉

Changed

  • added tests for NaN checks in iter.sum() and iter.product().
  • Simplified deno.json again using the new [global-exclude][global-exclude]
    feature.
iterable-utilities - `flatMap` and fixed `chunkify`

Published by jajaperson over 1 year ago

Added

  • Added iter.flatMap() 🎉 (like Array.prototype.flatMap)

Changed

  • Flattened deno.json
  • Chunkify actually works as intended
iterable-utilities - Breaking spelling correction

Published by jajaperson about 2 years ago

Added

  • Curried exports of all functions (I've been forgetting to update these, so I
    also added a test to remind me to do so)
  • Alternate npm entry point for fp.
  • Testing now includes copb compatibility
    (including the npm version).

Changed

  • (⚠️ breaking) Fixed typo in iter.remember() (originally
    iter.rememeber())
  • Point docs to deno.land rather than
    doc.deno.land
iterable-utilities - Peekable iterators

Published by jajaperson about 2 years ago

Added

Changed

  • (docs) Added special note on the inclusivity of create.range().
iterable-utilities - Create iterators over character units & codes!

Published by jajaperson about 2 years ago

Added

  • iter.create.fromChars() and iter.create.fromCharCodes() for iterating over UTF-16 character units and codes respectively.
iterable-utilities - v2.4.2

Published by jajaperson about 2 years ago

Changed

  • Another attempt to fix the NPM release
    (debugging actions can be awful sometimes).
iterable-utilities - Fix NPM release action

Published by jajaperson about 2 years ago

Changed

  • Fixed NPM release action. 🚧
iterable-utilities - NPM, flatten, fuse, and fromResults

Published by jajaperson about 2 years ago

Added

  • NPM support 🎉
  • Transformers
    • iter.flat() (like Array.prototype.flat)
    • iter.completeFlat() for flattening an iterable completely.
    • iter.fuse() for ignoring values after and including the return.
  • Generators
    • iter.create.fromResults() for creating iterators directly from results
iterable-utilities - Range, arithmetic reducers, and effectors

Published by jajaperson over 3 years ago

Added

  • Effectors
    • iter.forEach() (like Array.prototype.forEach)
    • iter.lazyObserver() for observing each yielded value lazily.
  • Generators
    • iter.create.range() for creating an iterable over a range of numbers.
  • Reducers
    • iter.sum() for getting the sum of an iterable.
    • iter.product() for getting the product of an iterable.
    • iter.norm() for getting the vector norm of an iterable.
iterable-utilities - Improve naming conventions

Published by jajaperson over 3 years ago

Added

  • Several types for iter functions.
    • IterFunction
    • UniaryIterFunction
    • CurriedIterFunction
    • UniaryIterTransformer
  • Documentation on chaining/composition.

Changed

  • All documentation which previously referred to the functions of this library
    as methods now says function.
iterable-utilities - FP version

Published by jajaperson over 3 years ago

Added

  • An IterableCircular type for iterables using generator functions.
  • A alternative module with a sensible level of currying, fp.ts. This is also
    exported as curried from the main mod.ts.

Changed

  • Everything which used to return an Iterable now returns the
    IterableCircular type. This doesn't break anything because these types are
    compatible.
iterable-utilities - Permanent iterables and better docs

Published by jajaperson over 3 years ago

Added

  • Export LICENSE from version.ts and mod.ts
  • Transformers
    • iter.remember() so that an iterable can be iterated over multiple times and
      be guaranteed to yield the same results.
  • Examples to documentation
iterable-utilities - Reusable iterables

Published by jajaperson over 3 years ago

Added

Changed

  • Everything which used to return the IterableIterator type now returns the
    Iterable type. This also means that returned iterables are not use-once.
  • Iterables are no longer stripped before being passed to callbacks.
iterable-utilities - First stable release 🎉

Published by jajaperson almost 4 years ago

Maybe it was too soon.

Added

  • Reducers
    • iter.find() (like Array.prototype.find)
    • iter.findIndex() (like Array.prototype.findIndex)
    • iter.includes() (like Array.prototype.includes)
  • Transformers
    • iter.filter() (like Array.prototype.filter)
    • iter.until() to cut off an iterable when a predicate returns true
    • iter.indexedPairs (like Array.prototype.entries)
iterable-utilities - Add reducers

Published by jajaperson almost 4 years ago

Added

  • More unit tests.
  • Better documentation via TSDoc
  • Reducers
    • iter.reduce() (like Array.prototype.reduce)
    • iter.some() (like Array.prototype.some)
    • iter.every() (like Array.prototype.every)
  • Generators
    • iter.create.increments() to create an endless incremementing interator.

Changed

  • Clear separation of internal API.
  • Generators
    • Old iter.create.from() is now iter.create.endlessFrom().
      iter.create.from() now creates an iterator from a function returning
      iterator result objects.
iterable-utilities - Fix bug in `iter.pair()`

Published by jajaperson almost 4 years ago

Added

  • Unit tests

Changed

  • iter.pair() fixed so it doesn't just give the same value.
iterable-utilities - 7 new utilities

Published by jajaperson almost 4 years ago

Added

  • Generators
    • iter.create.from() for creating iterators from functions.
    • iter.create.constant() for creating an endless iterable of the same value.
    • iter.create.randomNumbers() for creating an endless iterable of
      pseudorandom numbers.
  • Transformers
    • iter.map() (like Array.prototype.map)
    • iter.take() for taking the first n items of an iterable.
  • Combinators
    • iter.pair() for zipping two iterables.
    • iter.concat (like Array.prototype.concat)