Skip to content

2.3.0

Compare
Choose a tag to compare
@github-actions github-actions released this 30 Aug 17:44

This release is a complete refactoring of how the Collection handle the operations and transformations classes.

First of all, there are no more Transformations, they are all converted to Operations. This is a huge change, everything is much simpler internally.
Then, Operations are now Function objects. They are also stateless and immutable.
Implementing a custom Operation is basically implementing the __invoke() method.
The __invoke() method returns one or more unary Closure at a time and the last Closure must take the Iterator argument.

Compare the Compact operation in version 2.2.0 and 2.3.0.

Run and Transform operations are also gone, now that an Operation is a function object, a new Operation Compose is available and replaces them.

All those changes should also improve overall performances, even though no benchmarks were made so far.

New

  • Convert operations and transformations to function objects #18
  • Run and Transform operation are gone

Miscellaneous