Combine two regions by creating a region that covers both regions fully
Test if other bounds are fully contained by this bounds.
Test if other bounds are fully contained by this bounds. EmptyBounds contain no other bounds but are contained by all non-empty bounds.
Returns non-empty bounds or throws NoSuchElementException
Expand bounds to include the key or keep unchanged if it is already included
Test if the key is included in bounds
Returns the intersection, if any, between two bounds
Returns true if this is EmptyBounds
Updates the spatial region of bounds to match that of the argument, leaving other dimensions, if any, unchanged.
Returns the result of applying f to this Bounds minKey and maxKey if this it is nonempty.
Returns the result of applying f to this Bounds minKey and maxKey if this it is nonempty. The minKey and maxKeys are given as instance of KeyBounds instead of a tuple. If this Bounds is EmptyBounds it is returned unchanged.
Returns non-empty bounds or the default value
Test if two bounds for intersection
Returns false if this is EmptyBounds
Represents a region of discrete space, bounding it by minimum and maximum points. The bounds maybe EmptyBounds as result of intersection operation.
The dimensionality of region is implied by the dimensionality of type parameter A. Boundable typeclass is required to manipulate instance of A.
Conceptually this ADT is similar
Option[KeyBounds[A]]
but adds methods convenient for testing and forming region intersection, union and mutation.Type of keys, or points in descrete space