VecForeachPtrInRange
- Macro
- August 22, 2025
Table of Contents
VecForeachPtrInRange
VecForeachPtrInRange
Description
Iterate over elements in a specific range of the given vector v
(as pointers). This is a convenience macro that iterates over a range using an internally managed index and provides a pointer to each element. The variable var
is declared and defined by this macro as a pointer to the vector’s data type.
Parameters
Name | Direction | Description |
---|---|---|
v | in,out | Vector to iterate over. |
var | in | Name of pointer variable to be used which’ll point to the current element. |
start | in | Starting index (inclusive). |
end | in | Ending index (exclusive). |
Success
The body
is executed for each element of the vector v
from the start
index to the end-1
index, with var
pointing to each element.
Failure
If the vector v
is NULL, its length is zero, or the range is invalid, the loop body will not be executed. Any failures within the VecForeachPtrInRangeIdx
macro will result in a fatal log message and program termination.
Usage example (Cross-references)
- In
Foreach.h:210
:
///
#define StrForeachPtrInRange(str, chrptr, start, end, body) \
VecForeachPtrInRange((str), (chrptr), (start), (end), {body})
#ifdef __cplusplus