subList()

Synopsis

Returns a new list containing a subset of the elements from the input list . The subset is specified using the arguments iLow and iHigh, which are inclusive indices. The indices are clamped to the respective ends of the list , if out of range. Note that the indices are 1-based.

Syntax

subList ( list As List, _
          iLow As Integer, _
          iHigh As Integer ) As List 
Argument Type Description
list list The input list
iLow integer Index of the first item in the subset, inclusive (1-based).
iHigh integer Index of the last item in the subset, inclusive (1-based).

Example 1

Intent >subList({:a, :b, :c, :d, :e, :f}, 2, 4) 
--> {:b, :c, :d} 
Here, the 2nd through 4th members of the list are returned.

Example 2

iLow out of range
Intent >subList({:a, :b, :c, :d, :e, :f}, -100, 4) 
--> {a, b, c, d} 
Here, the too-low iLow value is considered as a 1 for the purposes of the function evaluation.

Example 3

iHigh out of range
Intent >subList({:a, :b, :c, :d, :e, :f}, 2, 100) 
--> {:b, :c, :d, :e, :f} 
Here, the too-high iHigh value is rounded down to the length of the list for the purposes of the function evaluation.

Example 4

Invalid iLow/iHigh values
Intent >subList({:a, :b, :c, :d, :e, :f}, 6, 5) 
--> {} 
ihigh is less than ilow

Example 5

Both iLow and iHigh out of range
Intent >subList({:a, :b, :c, :d, :e, :f}, -5, 10) 
--> {:a, :b, :c, :d, :e, :f} 
Indices beyond the length of the list do not actually index beyond the list.