-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Prevent other crates from implementing *Ext traits #34
Comments
Would you suggest to do this for all our traits or just for some of them? |
All of the extension traits for
I agree, but a common array interface doesn't exist right now, and I'd rather focus on getting things working well for The way a lot of our traits are defined right now wouldn't make sense for types other than We can always remove the private marker type later without any breaking changes. |
100% agree. |
It would be nice to make it impossible for other crates to implement our
*Ext
traits, because then we could freely add new methods without breaking changes. (Adding theindexed_fold_skipnan
method toMaybeNanExt
in #33 is an example. Ifndarray-stats
was the only crate that could implementMaybeNanExt
, then we could addindexed_fold_skipnan
without that being a breaking change.)ndarray
accomplishes this for some of its traits (e.g. theDimension
trait) using a private marker type.The text was updated successfully, but these errors were encountered: