Commit 0ec626f
Rewrite ragged sublibrary as v3 VectorOfArray code with renamed types
Replace the partial reimplementation with the COMPLETE v3 vector_of_array.jl
code, mechanically transformed:
- VectorOfArray → RaggedVectorOfArray
- DiffEqArray → RaggedDiffEqArray
- AbstractVectorOfArray → AbstractRaggedVectorOfArray
- AbstractDiffEqArray → AbstractRaggedDiffEqArray
This preserves ALL v3 behavior exactly:
- A[i] returns the i-th inner array (not scalar)
- A[:, i] returns inner array without zero-padding
- RaggedEnd for per-column `end` resolution
- Iteration over inner arrays
- Full broadcasting, copy, zero, similar, fill!, push!, etc.
Tests are the complete v3 test suite (basic_indexing + interface_tests)
transformed with same type renames, plus new tests for interp/dense,
conversion, SymbolicIndexingInterface, and type hierarchy.
430 tests pass.
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>1 parent 2ff20c2 commit 0ec626f
3 files changed
Lines changed: 2136 additions & 975 deletions
File tree
- lib/RecursiveArrayToolsRaggedArrays
- src
- test
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
6 | 9 | | |
| 10 | + | |
7 | 11 | | |
8 | 12 | | |
9 | 13 | | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
10 | 17 | | |
| 18 | + | |
11 | 19 | | |
12 | 20 | | |
13 | 21 | | |
14 | 22 | | |
| 23 | + | |
15 | 24 | | |
16 | 25 | | |
17 | 26 | | |
18 | 27 | | |
19 | | - | |
| 28 | + | |
0 commit comments