summaryrefslogtreecommitdiff
path: root/lib/libc/wctype/iswspace.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libc/wctype/iswspace.c')
-rw-r--r--lib/libc/wctype/iswspace.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/lib/libc/wctype/iswspace.c b/lib/libc/wctype/iswspace.c
new file mode 100644
index 00000000..3b6806af
--- /dev/null
+++ b/lib/libc/wctype/iswspace.c
@@ -0,0 +1,20 @@
+#include <libc.h>
+#include <wchar.h>
+#include <wctype.h>
+
+int iswspace(wint_t wc)
+{
+ const wchar_t t[] = { L' ', L'\t', L'\n', L'\r', 11, 12,
+ 0x0085, 0x2000, 0x2001, 0x2002, 0x2003, 0x2004,
+ 0x2005, 0x2006, 0x2008, 0x2009, 0x200a, 0x2028,
+ 0x2029, 0x205f, 0x3000, 0
+
+ };
+
+ return wc && wcschr(t, (wchar_t)wc) != NULL;
+}
+
+weak int iswspace_l(wint_t wc, locale_t unused locale)
+{
+ return iswspace(wc);
+}