diff options
| author | Mitja Felicijan <mitja.felicijan@gmail.com> | 2026-01-21 22:52:54 +0100 |
|---|---|---|
| committer | Mitja Felicijan <mitja.felicijan@gmail.com> | 2026-01-21 22:52:54 +0100 |
| commit | dcacc00e3750300617ba6e16eb346713f91a783a (patch) | |
| tree | 38e2d4fb5ed9d119711d4295c6eda4b014af73fd /examples/dte/block-iter.h | |
| parent | 58dac10aeb8f5a041c46bddbeaf4c7966a99b998 (diff) | |
| download | crep-dcacc00e3750300617ba6e16eb346713f91a783a.tar.gz | |
Remove testing data
Diffstat (limited to 'examples/dte/block-iter.h')
| -rw-r--r-- | examples/dte/block-iter.h | 78 |
1 files changed, 0 insertions, 78 deletions
diff --git a/examples/dte/block-iter.h b/examples/dte/block-iter.h deleted file mode 100644 index aaef8cf..0000000 --- a/examples/dte/block-iter.h +++ /dev/null @@ -1,78 +0,0 @@ -#ifndef BLOCK_ITER_H -#define BLOCK_ITER_H - -#include <stdbool.h> -#include <stddef.h> -#include "block.h" -#include "util/list.h" -#include "util/macros.h" -#include "util/string-view.h" -#include "util/unicode.h" - -typedef struct { - Block *blk; - const ListHead *head; - size_t offset; -} BlockIter; - -static inline void block_iter_bof(BlockIter *bi) -{ - bi->blk = BLOCK(bi->head->next); - bi->offset = 0; -} - -static inline void block_iter_eof(BlockIter *bi) -{ - bi->blk = BLOCK(bi->head->prev); - bi->offset = bi->blk->size; -} - -static inline bool block_iter_is_eof(const BlockIter *bi) -{ - return bi->offset == bi->blk->size && bi->blk->node.next == bi->head; -} - -static inline bool block_iter_is_bol(const BlockIter *bi) -{ - return bi->offset == 0 || bi->blk->data[bi->offset - 1] == '\n'; -} - -static inline bool block_iter_is_eol(const BlockIter *bi) -{ - const Block *blk = bi->blk; - size_t offset = bi->offset; - if (offset == blk->size) { - if (blk->node.next == bi->head) { - // EOF - return true; - } - // Normalize - blk = BLOCK(blk->node.next); - offset = 0; - } - return blk->data[offset] == '\n'; -} - -void block_iter_normalize(BlockIter *bi); -size_t block_iter_eat_line(BlockIter *bi); -size_t block_iter_next_line(BlockIter *bi); -size_t block_iter_prev_line(BlockIter *bi); -size_t block_iter_next_char(BlockIter *bi, CodePoint *up); -size_t block_iter_prev_char(BlockIter *bi, CodePoint *up); -size_t block_iter_next_column(BlockIter *bi); -size_t block_iter_prev_column(BlockIter *bi); -size_t block_iter_bol(BlockIter *bi); -size_t block_iter_eol(BlockIter *bi); -void block_iter_back_bytes(BlockIter *bi, size_t count); -void block_iter_skip_bytes(BlockIter *bi, size_t count); -void block_iter_goto_offset(BlockIter *bi, size_t offset); -void block_iter_goto_line(BlockIter *bi, size_t line); -size_t block_iter_get_offset(const BlockIter *bi) WARN_UNUSED_RESULT; -size_t block_iter_get_char(const BlockIter *bi, CodePoint *up) WARN_UNUSED_RESULT; -char *block_iter_get_bytes(const BlockIter *bi, size_t len) WARN_UNUSED_RESULT; - -void fill_line_ref(BlockIter *bi, StringView *line); -void fill_line_nl_ref(BlockIter *bi, StringView *line); -size_t fetch_this_line(const BlockIter *bi, StringView *line); - -#endif |
