SplittablesBase.jl defines a simple set of APIs:
halve(collection): splitting givencollectionroughly in half.amount(collection): an "approximation" oflength.
These are the basis of parallel algorithms that can be derived from
reduce. Custom containers can support many parallel algorithms by
simply defining these functions.
SplittablesTesting.jl
provides simple test utility functions
SplittablesTesting.test_ordered(examples) and
SplittablesTesting.test_unordered(examples) that run some
automatable tests with each example container in examples.
See more in the documentation.
halve methods for following collections in Base are implemented in
SplittablesBase.jl:
AbstractArrayAbstractStringDictkeys(::Dict)values(::Dict)SetTupleNamedTuplezippairsBase.GeneratorIterators.filterIterators.flattenIterators.partitionIterators.productIterators.enumerateIterators.reverseskipmissing