Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Introduce RegularArray for rectilinear blocks of any type of awkward …
…array. (#23) This PR only implements `RegularArray` in C++ and Numba, with all the `__getitem__` cases. The next PR will actually use it in inflating arrays for `__getitem__` of `tuple` and for `newaxis`. We should also have some actual tests for `__getitem__` of `Ellipsis` and `newaxis`. * Fewest tests in matrix and rename 'test-requirements.txt' to 'requirements-test.txt'. * Infrastructure for RegularArray. * Minimal implementation of RegularArray; can print it out. * Checkpoint before replacing RegularArray/RegularType into TileArray/TileType. * Changed my mind about renaming. Switched RegularType to 'size' rather than 'shape'. * Switched RegularArray to 'size' rather than 'shape'. * RegularArray::getitem_at. * Renamed 'unsafe' methods to 'nowrap' and 'check_for_iteration' (more descriptive). * RegularArray::getitem_range. * RegularArray::getitem_next of null and at. * RegularArray::getitem_next of range (advanced and non-advanced). * RegularArray::getitem_next of array (non-advanced). * RegularArray::getitem_next of array (advanced). * Consolidated dynamic_casts of getitem so it will be easier to update. * Gave NumpyArray::getitem_strides and getitem_next the same treatment: dynamic_casts are consolidated. * Working on test_numpy. * test_numpy completely works. * First RegularArray::getitem_next loop moved to cpu-kernels. * RegularArray::getitem_next(range) loops moved to cpu-kernels. * RegularArray::getitem_next(array) loops moved to cpu-kernels; now these are all done. * RegularArray::setid written, compiles, but untested. * Testing RegularArray::setid; doesn't work yet. * RegularArray::setid works now. * Prepared for Numbafication of RegularArray. * Boxing and unboxing RegularArray. * RegularArray's lower_len works. * RegularArray's lower_getitem_int works. * RegularArray's lower_getitem_range works. * Fix 32-bit error in lower_getitem_range. * Forgot to externalize awkward_regulararray_getitem_carry_64. * Fixed a bug in lower_getitem_range (don't multiply the step size). * RegularArray lower_getitem_next(int) works. * [skip ci] RegularArray lower_getitem_next(range, not advanced) works. * RegularArray lower_getitem_next(range) works. * RegularArray lower_getitem_next(array, not advanced) works; also fixed 32-bit bug. * RegularArray lower_getitem_next(array, advanced) works. * Try to fix 32-bit again. * RegularArray (and this PR) is done; the next PR will apply it in various places.
- Loading branch information