name: range returns: range since: 0.58.0 description: | Return an opaque object that can be only be used in `foreach` statements.
[[@range]] range([[@int]] stop)
  [[@range]] range([[@int]] start, [[@int]] stop[, [[@int]] step])
- `start` must be integer greater or equal to 0. Defaults to 0. - `stop` must be integer greater or equal to `start`. - `step` must be integer greater or equal to 1. Defaults to 1. It cause the `foreach` loop to be called with the value from `start` included to `stop` excluded with an increment of `step` after each loop. example: | ```meson # Loop 15 times with i from 0 to 14 included. foreach i : range(15) ... endforeach ``` The range object can also be assigned to a variable and indexed. ```meson r = range(5, 10, 2) assert(r[2] == 9) ``` optargs: start: type: int default: 0 description: The start of the range stop: type: int description: The end of the range step: type: int default: 1 description: The loop increment