Closed Mingun closed 4 years ago
As the number of commits approaches an obscene large number, I decided to finish part of them in this PR. All but the last are completely backward compatible. The last changes the type requirements for the *Assign
operators and technically is a breaking change. However, it is highly unlikely that it will break anything in user code, because I'm bet that Point types always instantiated with types where the implementation of ordinary and *Assign
operators is the same.
This does not mean that I propose to make this change in the patch, but this change can raise the version to 0.21 without the danger of actually breaking the user code. Although, if you don't want to take risks, I can exclude it from this PR and include it in one of my next PR with such breaking changes.
Summary of changes:
try!
#[inline]
min/max/clamp
in terms of PartialOrd
for all types*Assign
counterparts for operators of PointsSorry for the delay. Please remove the *Assign
operators for now. The change is not particularly important so even if it isn't likely to break much code, let's just bundle it with the other breaking changes since there are going to be some. The rest looks good at a glance.
Done
@Mingun thanks, there are a few build errors which should be straightforward to fix.
The costs of frequent rebases, although I thought I tested all commits for buildable :/. Now all commits buildable
Thank you for your patience.
@bors-servo r+
:pushpin: Commit 444db0c has been approved by nical
:hourglass: Testing commit 444db0c0e0c736d89eeb6ede8a18b46c2522f6d8 with merge 190adc0701e57048d44ddbd725fee01221fca2ba...
:sunny: Test successful - checks-travis Approved by: nical Pushing 190adc0701e57048d44ddbd725fee01221fca2ba to master...
Part of large changeset, which includes also #410. Aimed to improve ergonomics, fill gaps in the API and overall consistency.