groovy.lang

## Interface Range<T extends Comparable>

All Superinterfaces:
  Collection<T>, Iterable<T>, List<T>

All Known Implementing Classes:
  EmptyRange, IntRange, ObjectRange

    public interface Range<T extends Comparable>
    extends List<T>

A Range represents the list of all items obtained by starting from a `from` value and calling `next()` successively until you reach the `to` value. For a reverse range, the list is obtained by starting at the `to` value and successively calling `previous()` until the `from` value is reached.

Version:
  $Revision: 18729 $
Author:
  James Strachan

### Method Summary

Methods
`boolean` `containsWithinBounds(Object o)` Indicates whether an object is greater than or equal to the `from` value for the range and less than or equal to the `to` value.
`Comparable` `getFrom()` The lower value in the range.
`Comparable` `getTo()` The upper value in the range.
`String` `inspect()`
`boolean` `isReverse()` Indicates whether this is a reverse range which iterates backwards starting from the to value and ending on the from value
`List<T>` `step(int step)` Forms a list by stepping through the range by the indicated interval.
`void` `step(int step, Closure closure)` Steps through the range, calling a closure for each number.

### Methods inherited from interface java.util.List

`add, add, addAll, addAll, clear, contains, containsAll, equals, get, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, retainAll, set, size, subList, toArray, toArray`

### Method Detail

#### getFrom

    Comparable getFrom()

The lower value in the range.

Returns:
  the lower value in the range.

#### getTo

    Comparable getTo()

The upper value in the range.

Returns:
  the upper value in the range

#### isReverse

    boolean isReverse()

Indicates whether this is a reverse range which iterates backwards starting from the to value and ending on the from value

Returns:
  `true` if this is a reverse range

#### containsWithinBounds

    boolean containsWithinBounds(Object o)

Indicates whether an object is greater than or equal to the `from` value for the range and less than or equal to the `to` value.

Parameters:
  `o` - the object to check against the boundaries of the range
Returns:
  `true` if the object is between the from and to values

#### step

    void step(int step,
            Closure closure)

Steps through the range, calling a closure for each number.

Parameters:
  `step` - the amount by which to step. If negative, steps through the range backwards.
  `closure` - the `Closure` to call

#### step

    List<T> step(int step)

Forms a list by stepping through the range by the indicated interval.

Parameters:
  `step` - the amount by which to step. If negative, steps through the range backwards.
Returns:
  the list formed by stepping through the range by the indicated interval.

#### inspect

    String inspect()

Returns:
  the verbose `String` representation of this `Range` as would be typed into a console to create the `Range` instance