master xplshn/aruu / shared / libutf / utftorunestr.c
 1/* See LICENSE file for copyright and license details. */
 2#include "../utf.h"
 3
 4size_t
 5utftorunestr(const char *str, Rune *r)
 6{
 7	size_t i;
 8	int n;
 9
10	for (i = 0; (n = chartorune(&r[i], str)) && r[i]; i++)
11		str += n;
12
13	return i;
14}
15
16size_t
17utfntorunestr(const char *str, size_t len, Rune *r)
18{
19	size_t i;
20	int n;
21	const char *end = str + len;
22
23	for (i = 0; (n = charntorune(&r[i], str, end - str)); i++)
24		str += n;
25
26	return i;
27}