MKMapRect.Intersection Union and Intersect take two MKMapRects, but could be instance methods on the first instance.
In theory: yes. In practice: there are drawbacks as the existing API are direct binding of Apple's functions, e.g.
> MKMapRect MKMapRectIntersection ( MKMapRect rect1, MKMapRect rect2 );
which returns a new instance of MKMapRect.
Now we could copy the returned `MKMapRect` instance values back into `this` but this has a performance impact.
It could be minor in some cases, e.g. when the original value is not needed, unless it's used in a loop.
OTOH if misused, e.g. if the code keeps it's own copies of the `MKMapRect` because it's not aware that the other API, then you end up doing many copy operations (and likely extra allocations).
Since those API would be easier to discover (code completion) and we cannot assume everyone will read the documentation (the name pretty much covers it) then I'm not sure we end up helping a lot.
Note: `MKMapRectIntersectsRect` is different as it returns a `bool` so there would not be any impact in adding an instance method.