All Versions
9
Latest Version
Avg Release Cycle
306 days
Latest Release
1316 days ago

Changelog History

  • v2.1.0 Changes

    September 19, 2020
    • ➕ Added iter\slice() method (#80). This works like explode() but produces an iterator.
    • ➕ Added iter\mapWithKeys() method (#81). This works like iter\map() but also passes keys as second parameter to the callable.
  • v2.0.0 Changes

    May 30, 2019

    🚀 This release makes iter compatible with PHP 7.4 by renaming the iter\fn namespace to iter\func.

    • PHP >= 7.1 is now required. Functions are annotated with iterable types. (#52)
    • The iter\fn namespace has been renamed to iter\func. This is necessary for PHP 7.4 compatibility. (#79)
    • 0️⃣ Default $preserveKeys = false in chunk() and add chunkWithKeys() function.
    • Avoid advancing by one additional iteration in slice(). (#75)
  • v1.6.0 Changes

    November 10, 2017
    • ➕ Added iter\enumerate() function (#43).
    • ➕ Added iter\isEmpty() function (#46).
    • ➕ Added $preserveKeys parameter to iter\chunk() (#42).
  • v1.5.0 Changes

    April 26, 2017
    • ➕ Added $levels argument for flatten().
    • ➕ Added flatMap() function.
  • v1.4.0 Changes

    September 27, 2016
    • 🛠 Fixed infinite loop when iter\zip() is called without arguments.
    • ➕ Added additional error checks for various "length" and "count" parameters (usually disallowing negative numbers).
    • The iter\flatten() function now preserves keys.
    • ➕ Added an iter\recurse() function. Example use is iter\recurse('iter\toArray', $data) which will recursively convert an iterator to array.
  • v1.3.0 Changes

    October 21, 2015
    • ➕ Added Iterator iter\product(...$iterables):
      Returns the cartesian product iterator of the passed iterators. (#25)
    • ➕ Added bool iter\isIterable(mixed $value):
      Returns whether the value is an array or Traversable.
    • ➕ Added $key parameter to the callback of reduce() and reductions(). (#28)
    • ➕ Added support for <=> to fn\operator(). It is also supported on PHP versions that do not natively provide a <=> operator.
    • All functions now validate that inputs are iterables.
  • v1.2.0 Changes

    March 08, 2015
    • ➕ Added new iter functions:
      • mixed search(callable $predicate, iterable $iterable):
        Returns the first value from $iterable which satisfies $predicate, or null if no such element exists.
      • Iterator reductions(callable $function, iterable $iterable, mixed $startValue = null):
        Returns an iterator which contains the intermediate values produced by applying a reduction function to an iterator. Can for example be used to compute cumulative sums.
    • 👍 Added support for the power operator (**) to iter\fn\operator(). Support is available also on older PHP versions which do not have an actual ** operator.
  • v1.1.0 Changes

    March 27, 2014

    ➕ Added iter functions:

    • Iterator mapKeys(callable $function, iterable $iterable)
    • Iterator reindex(callable $function, iterable $iterable)
    • Iterator chunk(iterable $iterable, int $size)
    • Iterator flip(iterable $iterable)
    • string join(string $separator, iterable $iterable)

    ➕ Added iter\fn functions:

    • function nested_index(...$indices)
  • v1.0.0 Changes

    January 07, 2014

    🚀 First release :)