Right now map returns a normal Array, discarding the axis data - this PR would change that to preserve axis information, and require that values only be mapped from multiple AxisArrays if they have identical axes. As discussed in #54, broadcasting with semantic axes is a bit complicated, but map seems less controversial?
IIRC back in 0.4 map actually preserved the axis data, I guess something in the AbstractArray implementation changed with 0.5? I'm assuming that explicit mapping functions are the best way to regain this behaviour, but if there's a lower-level interface that could be implemented to achieve the same end, that would probably be the more elegant solution.
Also, checking for matchingdims was using size previously, which caused issues when used with things like OffsetArrays - this addresses that as well.
Right now
map
returns a normal Array, discarding the axis data - this PR would change that to preserve axis information, and require that values only be mapped from multiple AxisArrays if they have identical axes. As discussed in #54, broadcasting with semantic axes is a bit complicated, butmap
seems less controversial?IIRC back in 0.4
map
actually preserved the axis data, I guess something in the AbstractArray implementation changed with 0.5? I'm assuming that explicit mapping functions are the best way to regain this behaviour, but if there's a lower-level interface that could be implemented to achieve the same end, that would probably be the more elegant solution.Also, checking for
matchingdims
was usingsize
previously, which caused issues when used with things like OffsetArrays - this addresses that as well.