Ranges
A collection of extension functions that enrich ClosedRange.
Functions
Checks whether two ranges coincide. It's a different way of checking if they're equals, which doesn't depend on their actual implementation. Note that the way you obtain a range may influence the actual class used, and you can have two coincident ranges which are not equal because of different classes.
Checks whether the range contains the other one. This method is faster than checking if the range contains both of the endpoints of other.
Given a non-empty list of points represented as vectors, this method finds the extreme coordinates (i.e. min and max coordinates) on the X-axis, these are used to create the returned ClosedRange.
Given a non-empty list of points represented as vectors, this method finds the extreme coordinates (i.e. min and max coordinates) on the Y-axis, these are used to create the returned ClosedRange.
Finds the intersection between two ranges, the resulting range may feature a single value (if the ranges only share an endpoint) or can be null, if they don't intersect at all.
Checks whether the range intersects the other one.
Checks whether two ranges intersect, excluding their bounds (i.e., excluding both ClosedRange.start and ClosedRange.endInclusive). This means false is returned in case the ranges share a single endpoint.
Performs a subtraction between ranges. The operation can produce an empty list (e.g. if the current range is contained in the other one), a list featuring a single element, or a list featuring two elements (e.g. if the current range contains the other one).
Creates a ClosedRange from a couple of unordered values.
Subtracts all the given ranges from the current one. See ClosedRange.minus.