Lines Matching refs:sv
22 sv_init_sv(strview_t *sv, const strview_t *src) in sv_init_sv() argument
24 *sv = *src; in sv_init_sv()
28 sv_init_sv_range(strview_t *sv, const strview_t *src, size_t len) in sv_init_sv_range() argument
32 sv->sv_first = src->sv_first; in sv_init_sv_range()
33 sv->sv_last = src->sv_first + len; in sv_init_sv_range()
34 sv->sv_rem = len; in sv_init_sv_range()
38 sv_init_str(strview_t *sv, const char *first, const char *last) in sv_init_str() argument
44 sv->sv_first = first; in sv_init_str()
45 sv->sv_last = last; in sv_init_str()
46 sv->sv_rem = (size_t)(uintptr_t)(sv->sv_last - sv->sv_first); in sv_init_str()
50 sv_remaining(const strview_t *sv) in sv_remaining() argument
52 return (sv->sv_rem); in sv_remaining()
56 sv_consume_if_c(strview_t *sv, char c) in sv_consume_if_c() argument
58 if (sv->sv_rem < 1 || *sv->sv_first != c) in sv_consume_if_c()
61 sv->sv_first++; in sv_consume_if_c()
62 sv->sv_rem--; in sv_consume_if_c()
67 sv_consume_if(strview_t *sv, const char *str) in sv_consume_if() argument
71 if (sv->sv_rem < slen) in sv_consume_if()
73 if (strncmp(sv->sv_first, str, slen) != 0) in sv_consume_if()
76 sv->sv_first += slen; in sv_consume_if()
77 sv->sv_rem -= slen; in sv_consume_if()
82 sv_peek(const strview_t *sv, ssize_t n) in sv_peek() argument
86 p = (n >= 0) ? sv->sv_first + n : sv->sv_last + n; in sv_peek()
87 return ((p >= sv->sv_first && p < sv->sv_last) ? *p : '\0'); in sv_peek()
91 sv_consume_c(strview_t *sv) in sv_consume_c() argument
95 if (sv->sv_first < sv->sv_last) { in sv_consume_c()
96 c = *sv->sv_first++; in sv_consume_c()
97 sv->sv_rem--; in sv_consume_c()
103 sv_consume_n(strview_t *sv, size_t n) in sv_consume_n() argument
105 VERIFY3U(sv->sv_rem, >=, n); in sv_consume_n()
106 sv->sv_first += n; in sv_consume_n()
107 sv->sv_rem -= n; in sv_consume_n()