summaryrefslogtreecommitdiff
path: root/src/wctype/iswpunct.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/wctype/iswpunct.c')
-rw-r--r--src/wctype/iswpunct.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/wctype/iswpunct.c b/src/wctype/iswpunct.c
new file mode 100644
index 00000000..5ffdbe85
--- /dev/null
+++ b/src/wctype/iswpunct.c
@@ -0,0 +1,28 @@
+#include <wctype.h>
+#include "wchar.h"
+#include "nonstd/assert.h"
+
+/** test whether a wide character is punctuation **/
+int iswpunct(wint_t wc)
+{
+ ASSERT_REPRESENTABLE(wc, WCHAR_MIN, WCHAR_MAX, "wchar_t", WEOF);
+
+ wctype_t punct = wctype("punct");
+ return iswctype(wc, punct);
+}
+
+/***
+The fn(iswpunct) function tests whether arg(wc) is a character in the class
+cclass(punct) in the current locale.
+***/
+
+/* RETURN(NZ): arg(wc) is a punctuation character */
+/* RETURN(0): arg(wc) is not a punctuation character */
+
+/* UNSPECIFIED: - */
+/* IMPLEMENTATION: - */
+/* LOCALE: LC_CTYPE */
+
+/*
+STDC(199409)
+*/