-
Notifications
You must be signed in to change notification settings - Fork 37
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Reducing need for unique generated methods #111
Merged
Merged
Changes from all commits
Commits
Show all changes
17 commits
Select commit
Hold shift + click to select a range
a674a65
Replace Contiguous and ContiguousBatch with StaticInt
Tokazama 0b6ccac
StrideRank -> (StaticInt,...)
Tokazama e60c983
Replace DenseDims with tuple of StaticBool
Tokazama f645753
add from_parent_dims
Tokazama 044456c
Clean up a lot of unecessary methods
Tokazama 48a8956
Use to_parent_dims to support stride_ranks
Tokazama bb418e4
Merge remote-tracking branch 'upstream/master' into indexing-tests
Tokazama dc4e0fe
Fix 1.5 tests
Tokazama 527598c
Version bump
Tokazama 97c1d1b
Fix a couple docs and add static bool tests
Tokazama 2680f66
Add axes_types(ReinterpretArray) and fix contiguous_axis(VecAdjTrans)
Tokazama 22490b7
Fix strides for Adjoint/Transpose of vectors
Tokazama 1d8fe52
Add tests and docs for to/from_parent_dims
Tokazama fcbfc5f
Add static comparison operators + "test/static.jl" file
Tokazama 249b660
Fix refix strides on adjoint vectors
Tokazama 6ca4539
Add support for IfElse
Tokazama 34fb0d5
Fix `_perm_tuple` and remove old note
Tokazama File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this handle static axes?
What methods do we have to define?
At some point, in a later PR, we should work on making it easier to support the ArtayInterface. E.g., define a few traits that govern behavior, like
simplewrapper
that would let someone defineparent_type
and then have all method automatically use that.Or maybe there's a way to specify how a wrapper can change the parent, so that we could maybe use that internally as well. Perhaps the way to do that is just overload the things that're different.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The way I envision the whole thing is that a simple wrapper type would just unwrap until it finds the parent structure/type. I think most array types that change the offsets, static sizing, etc. they could just define
axes_types
andaxes
to get all these methods working.Perhaps the next big step for this package is to put together the documentation with a bunch of small examples?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree.
Someone asked on discourse recently about how to get LoopVectorization working with their custom array types, and I realized there isn't really good documentation on how to support the ArrayInterface.
I think their array type was just a thin wrapper. I'd like for cases like those to be especially easy.