ArrayInterface.jl icon indicating copy to clipboard operation
ArrayInterface.jl copied to clipboard

`index_labels` method and `IndexLabel` type indexing

Open Tokazama opened this issue 3 years ago • 4 comments

Successor to #260. Implements basic tools for accessing multidimensional keys and fancy indexing.

The goal is to have a common backend for some of the clearly overlapping traits/method that go into AxisArray, DimensionalData, and AxisKeys. This should also help us get closer to helping other packages provide support for multiple fancy array types without explicitly depending on them.

@johnnychen94 , @rafaqz , @mcabbott may be interested.

Tokazama avatar Jun 30 '22 09:06 Tokazama

Codecov Report

Merging #328 (0ad5cd6) into master (41bfc6f) will decrease coverage by 0.26%. The diff coverage is 73.07%.

@@            Coverage Diff             @@
##           master     #328      +/-   ##
==========================================
- Coverage   90.27%   90.00%   -0.27%     
==========================================
  Files           9        9              
  Lines        1337     1361      +24     
==========================================
+ Hits         1207     1225      +18     
- Misses        130      136       +6     
Impacted Files Coverage Δ
src/ArrayInterface.jl 85.96% <ø> (ø)
src/indexing.jl 82.92% <60.00%> (-1.37%) :arrow_down:
src/axes.jl 91.66% <85.71%> (-0.37%) :arrow_down:
src/dimensions.jl 94.03% <100.00%> (+0.16%) :arrow_up:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

codecov[bot] avatar Jun 30 '22 10:06 codecov[bot]

After a month of dedicated bike-shedding on discourse, I think this is ready for review.

It would be good to have some relevant package maintainers okay the name of the function @rafaqz (DimensionalData.jl), @mcabbott (AxisKeys.jl), @davidavdav (NamedArrays.jl), and someone from AxisArrays (maybe @johnnychen94). I'd also like an okay on the syntax from @ChrisRackauckas because we're using the term "label" here and I want to ensure that this isn't problematic for LabelledArrays.jl.

Tokazama avatar Aug 27 '22 01:08 Tokazama

I don't care about the name

ChrisRackauckas avatar Aug 27 '22 12:08 ChrisRackauckas

@mcabbott, would you mind providing some input if you have time?

Tokazama avatar Sep 21 '22 16:09 Tokazama

Anything static should go to https://github.com/JuliaArrays/StaticArrayInterface.jl

ChrisRackauckas avatar Feb 18 '23 11:02 ChrisRackauckas