Lines Matching refs:sl

114 strlist_next(const char * const sl, size_t const slsize, size_t * const cursorp)  in strlist_next()  argument
117 if (sl == NULL || slsize == 0 || cursorp == NULL) { in strlist_next()
128 const char *cp = sl + cursor; in strlist_next()
140 strlist_count(const char *sl, size_t slsize) in strlist_count() argument
143 if (sl == NULL || slsize == 0) { in strlist_count()
151 count++, sl += cursize, slsize -= cursize) { in strlist_count()
152 cursize = strlen(sl) + 1; in strlist_count()
164 strlist_string(const char * sl, size_t slsize, unsigned int const idx) in strlist_string() argument
167 if (sl == NULL || slsize == 0) { in strlist_string()
174 for (i = 0; slsize != 0; i++, slsize -= cursize, sl += cursize) { in strlist_string()
175 cursize = strlen(sl) + 1; in strlist_string()
177 return sl; in strlist_string()
199 strlist_match_internal(const char * const sl, size_t slsize, in strlist_match_internal() argument
208 if (sl == NULL || slsize == 0) { in strlist_match_internal()
212 cp = sl; in strlist_match_internal()
257 strlist_match(const char * const sl, size_t const slsize, in strlist_match() argument
263 if (strlist_match_internal(sl, slsize, str, &idx, &count, in strlist_match()
278 strlist_pmatch(const char * const sl, size_t const slsize, in strlist_pmatch() argument
284 if (strlist_match_internal(sl, slsize, pattern, &idx, &count, in strlist_pmatch()
302 strlist_index(const char * const sl, size_t const slsize, in strlist_index() argument
307 if (strlist_match_internal(sl, slsize, str, &idx, NULL, in strlist_index()
325 char * const sl = *slp; in strlist_append() local
335 if (sl != NULL) { in strlist_append()
336 memcpy(newbuf, sl, slsize); in strlist_append()
341 if (sl != NULL) { in strlist_append()
342 strlist_free(sl, slsize); in strlist_append()
380 const char *sl; in main() local
386 sl = nice_blob; in main()
390 assert(strlist_count(sl, slsize) == 6); in main()
394 assert((cp = strlist_next(sl, slsize, &cursor)) != NULL); in main()
397 assert((cp = strlist_next(sl, slsize, &cursor)) != NULL); in main()
400 assert((cp = strlist_next(sl, slsize, &cursor)) != NULL); in main()
403 assert((cp = strlist_next(sl, slsize, &cursor)) != NULL); in main()
406 assert((cp = strlist_next(sl, slsize, &cursor)) != NULL); in main()
409 assert((cp = strlist_next(sl, slsize, &cursor)) != NULL); in main()
412 assert((cp = strlist_next(sl, slsize, &cursor)) == NULL); in main()
415 assert(strlist_match(sl, slsize, "non-existent") == 0); in main()
416 assert(strlist_match(sl, slsize, "zero") == 6); in main()
417 assert(strlist_match(sl, slsize, "one") == 5); in main()
418 assert(strlist_match(sl, slsize, "two") == 4); in main()
419 assert(strlist_match(sl, slsize, "three") == 3); in main()
420 assert(strlist_match(sl, slsize, "four") == 2); in main()
421 assert(strlist_match(sl, slsize, "five") == 1); in main()
424 assert(strlist_pmatch(sl, slsize, "t?o") == 4); in main()
425 assert(strlist_pmatch(sl, slsize, "f[a-o][o-u][a-z]") == 2); in main()
428 assert(strlist_index(sl, slsize, "non-existent") == -1); in main()
429 assert(strlist_index(sl, slsize, "zero") == 0); in main()
430 assert(strlist_index(sl, slsize, "one") == 1); in main()
431 assert(strlist_index(sl, slsize, "two") == 2); in main()
432 assert(strlist_index(sl, slsize, "three") == 3); in main()
433 assert(strlist_index(sl, slsize, "four") == 4); in main()
434 assert(strlist_index(sl, slsize, "five") == 5); in main()
437 assert(strcmp(strlist_string(sl, slsize, 0), "zero") == 0); in main()
438 assert(strcmp(strlist_string(sl, slsize, 1), "one") == 0); in main()
439 assert(strcmp(strlist_string(sl, slsize, 2), "two") == 0); in main()
440 assert(strcmp(strlist_string(sl, slsize, 3), "three") == 0); in main()
441 assert(strcmp(strlist_string(sl, slsize, 4), "four") == 0); in main()
442 assert(strcmp(strlist_string(sl, slsize, 5), "five") == 0); in main()
443 assert(strlist_string(sl, slsize, 6) == NULL); in main()
445 sl = gross_blob; in main()
449 assert(strlist_count(sl, slsize) == 7); in main()
452 assert(strcmp(strlist_string(sl, slsize, 0), "zero") == 0); in main()
453 assert(strcmp(strlist_string(sl, slsize, 1), "") == 0); in main()
454 assert(strcmp(strlist_string(sl, slsize, 2), "two") == 0); in main()
455 assert(strcmp(strlist_string(sl, slsize, 3), "") == 0); in main()
456 assert(strcmp(strlist_string(sl, slsize, 4), "four") == 0); in main()
457 assert(strcmp(strlist_string(sl, slsize, 5), "") == 0); in main()
458 assert(strcmp(strlist_string(sl, slsize, 6), "") == 0); in main()
459 assert(strlist_string(sl, slsize, 7) == NULL); in main()