meson/docs/markdown/snippets/range.md

729 B

New range() function

    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.

# 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.

r = range(5, 10, 2)
assert(r[2] == 9)