parent
6415453f17
commit
a45f939092
7 changed files with 119 additions and 3 deletions
@ -0,0 +1,28 @@ |
||||
## New `range()` function |
||||
|
||||
``` meson |
||||
rangeobject range(stop) |
||||
rangeobject range(start, stop[, step]) |
||||
``` |
||||
|
||||
Return an opaque object that can be only be used in `foreach` statements. |
||||
- `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. |
||||
|
||||
```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) |
||||
``` |
||||
|
Loading…
Reference in new issue