-
Notifications
You must be signed in to change notification settings - Fork 15
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
Add user-defined types #177
Conversation
UDTs can be *any* fixed-length numpy type that doesn't have Python objects. Basically, UDFs that operate on the UDTs need to be able to be compiled with `@numba.njit`.
Some usage of `lookup_dtype` is not unnecessary now that ops use dtypes instead of dtype names. Also, using `get_typed_op` is preferred over `unify` where possible.
Whew! Okay, I think this is pretty much done. Tests and coverage are as solid as I can reasonably make them. Final thoughts and future possibilities:
This PR opens up a whole universe of possibilities. Record dtypes and array dtypes support different use cases, and both can be super-important. Anyway, I think this PR should be merged ASAP, but feedback is welcome for any who are courageous enough to review it (CC @jim22k). Although I think things are pretty good, we can always smooth any rough edges we find once we actually implement workloads that needs UDTs. |
UDTs can be any fixed-length numpy type that doesn't have Python objects.
Basically, UDFs that operate on the UDTs need to be able to be compiled with
@numba.njit
.Still lots to do, but many things are already working!