IterLength
- Macro
- August 22, 2025
Table of Contents
IterLength
IterLength
Description
Get total length of this Iter object
Success
If provided Iter object is not NULL_ITER(mi) then returns size in bytes of memory region this Iter is iterating over.
Failure
If provided Iter is NULL_ITER(mi) then returns 0
Usage example (Cross-references)
- In
StrIter.h:119
:
///
/// TAGS: StrIter, Length, Query, Iter
#define StrIterLength(mi) IterLength(mi)
///
- In
Move.h:16
:
#define IterMove(mi, n) \
do { \
if (IterRemainingLength(mi) - (mi)->dir * (n) <= IterLength(mi)) \
(mi)->pos += (mi)->dir * (n); \
} while (0)
- In
Access.h:40
:
/// TAGS: Memory, Size, Iter
///
#define IterSize(mi) IterLength(mi) * ALIGN_UP(sizeof(ITER_DATA_TYPE(mi)), (mi)->alignment)
///
- In
Iter.c:9
:
size remaining_length_iter(GenericIter *mi) {
if ((mi)->dir == 1) {
if ((mi)->pos < IterLength(mi)) {
return IterLength(mi) - (mi)->pos;
} else {
- In
Iter.c:10
:
if ((mi)->dir == 1) {
if ((mi)->pos < IterLength(mi)) {
return IterLength(mi) - (mi)->pos;
} else {
return 0;
- In
Iter.c:15
:
}
} else if ((mi)->dir == -1) {
if ((mi)->pos < IterLength(mi)) {
return (mi)->pos + 1;
} else {