Blender V4.3
BLI_utildefines_iter.h
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#pragma once
6
28#define BLI_FOREACH_SPARSE_RANGE(src, dst, i) \
29 for (int _src = (src), \
30 _src2 = _src * 2, \
31 _dst2 = (dst) * 2, \
32 _error = _dst2 - _src, \
33 i = 0, \
34 _delta; \
35 ((void)(_delta = divide_floor_i(_error, _dst2)), (void)(i -= _delta), (i < _src)); \
36 _error -= (_delta * _dst2) + _src2)