I guess this comes under internals (libraries):
Is it possible to add derive macros for AddAssign etc.?
Status quo: arithmetic operations are supported on custom types via the Add
, Sub
, Mul
etc. traits. These can be implemented multiple times (e.g. to component-wise operations on vectors by scalars), which adds up to many implementations already.
Now to support +=
etc. for these, the number of trait implementations needs to be doubled.
Note that as with derive(Debug)
, an error would be emitted when the corresponding trait (Add
etc.) wasn't implemented. I don't see any technical hurdles.
Alternatively, I guess the plan may be to add blanket implementations once specialisation is stable — however, I understand this is likely to be a ways off yet.