Skip to content
IterMustPeekAt

IterMustPeekAt

Description

Aborting variant of IterPeekAt. See that macro for parameter semantics and success-state effects.

Success

Returns to the caller; the underlying IterPeekAt succeeded.

Failure

Does not return - aborts via LOG_FATAL when pos + n is out of range.

Usage example (Cross-references)

Usage examples (Cross-references)
    /// TAGS: StrIter, Peek, Must, Alias
    ///
    #define StrIterMustPeek(mi, out) IterMustPeekAt((mi), 0, (out))
    
    ///
    /// TAGS: StrIter, Peek, Offset, Must, Alias
    ///
    #define StrIterMustPeekAt(mi, n, out) IterMustPeekAt((mi), (n), (out))
    
    ///
        do {                                                                                                               \
            if (!IterPeekAt((mi), (n), (out))) {                                                                           \
                LOG_FATAL("IterMustPeekAt: offset out of range");                                                          \
            }                                                                                                              \
        } while (0)
        BufIter  it     = BufIterFromMemory(buf, 1);
        u8       v;
        IterMustPeekAt(&it, 1, &v);
        return true;
    }
Last updated on