std/enumerate
Исходный код РедактироватьЭтот модуль реализует enumerate синтаксический сахар, основанный на макросистеме Nim.
Импорты
- since, macros
Макросы
macro enumerate(x: ForLoopStmt): untyped
-
Итератор перечисления для коллекций.
Он возвращает
(count, value)кортежи (которые должны быть немедленно распакованы). Значение начального счётчика0можно вручную переопределить при необходимости.Пример:
let a = [10, 20, 30] var b: seq[(int, int)] = @[] for i, x in enumerate(a): b.add((i, x)) assert b == @[(0, 10), (1, 20), (2, 30)] let c = "abcd" var d: seq[(int, char)] for (i, x) in enumerate(97, c): d.add((i, x)) assert d == @[(97, 'a'), (98, 'b'), (99, 'c'), (100, 'd')]
Исходный код Редактировать
© 2006–2024 Andreas Rumpf
Licensed under the MIT License.
https://nim-lang.org/docs/enumerate.html