1570af302Sopenharmony_ci#include <wchar.h>
2570af302Sopenharmony_ci
3570af302Sopenharmony_ciwchar_t *wcstok(wchar_t *restrict s, const wchar_t *restrict sep, wchar_t **restrict p)
4570af302Sopenharmony_ci{
5570af302Sopenharmony_ci	if (!s && !(s = *p)) return NULL;
6570af302Sopenharmony_ci	s += wcsspn(s, sep);
7570af302Sopenharmony_ci	if (!*s) return *p = 0;
8570af302Sopenharmony_ci	*p = s + wcscspn(s, sep);
9570af302Sopenharmony_ci	if (**p) *(*p)++ = 0;
10570af302Sopenharmony_ci	else *p = 0;
11570af302Sopenharmony_ci	return s;
12570af302Sopenharmony_ci}
13