range
contains
|Range, Number| -> Bool
Returns true if the provided number is within the range, and false otherwise.
|Range, Range| -> Bool
Returns true if the provided range is entirely contained within the range, and false otherwise.
Example
.contains 15
#: true
.contains 200
#: true
# Descending ranges are considered to be empty.
.contains 100
#: false
x = 1..10
x.contains -1
#: false
.contains 14..18
#: true
.contains 50..250
#: false
end
|Range| -> Number
Returns the end value of the range.
Example
.end
#: 100
.end
#: 0
See also
expanded
|Range, amount: Number| -> Range
Returns a copy of the input range which has been 'expanded' in both directions
by the provided amount.
This will mean that start will decrease by the provided amount, and end will increase by the same amount.
Negative amounts will cause the range to shrink rather than grow.
Example
.expanded 5
#: 5..25
.expanded -2
#: 12..18
.expanded 5
#: -10..10
.expanded -5
#: 0..0
.expanded -10
#: 5..-5
intersection
|Range, Range| -> Range?
Returns a range representing the intersecting region of the two input ranges.
If there is no intersecting region then null is returned.
Example
.intersection 5..15
#: 10..15
.intersection 150..=250
#: 150..200
.intersection 90..99
#: null
is_inclusive
|Range| -> Bool
Returns true if the range has a defined end which is inclusive.
Example
.is_inclusive
#: false
.is_inclusive
#: true
.is_inclusive
#: false
start
|Range| -> Number
Returns the start value of the range.
Example
.start
#: 50
.start
#: 10
See also
union
|Range, Number| -> Range
Returns the union of the range and a provided number.
If the number falls outside of the range then the resulting range will be expanded to include the number.
|Range, Range| -> Range
Returns the union of two ranges.
The resulting range will encompass all values that are contained in the two ranges, and any values that lie between them.
Example
.union 5
#: 0..10
.union 99
#: 0..=99
a = 10..20
b = 40..50
a.union b
#: 10..50
.union 20..30
#: 20..=200