The Meson Build System
http://mesonbuild.com/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
729 B
29 lines
729 B
4 years ago
|
## 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)
|
||
|
```
|
||
|
|