Document the alternative APIs for character classification.
authorBruno Haible <bruno@clisp.org>
Sun, 18 Oct 2009 19:49:38 +0000 (21:49 +0200)
committerBruno Haible <bruno@clisp.org>
Sun, 18 Oct 2009 19:49:38 +0000 (21:49 +0200)
14 files changed:
ChangeLog
doc/posix-functions/isalnum.texi
doc/posix-functions/isalpha.texi
doc/posix-functions/isascii.texi
doc/posix-functions/isblank.texi
doc/posix-functions/iscntrl.texi
doc/posix-functions/isdigit.texi
doc/posix-functions/isgraph.texi
doc/posix-functions/islower.texi
doc/posix-functions/isprint.texi
doc/posix-functions/ispunct.texi
doc/posix-functions/isspace.texi
doc/posix-functions/isupper.texi
doc/posix-functions/isxdigit.texi

index e4541a1..0500aaf 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,20 @@
+2009-10-18  Reuben Thomas  <rrt@sc3d.org>
+            Bruno Haible  <bruno@clisp.org>
+
+       * doc/posix-functions/isascii.texi: Document the 2 alternative APIs.
+       * doc/posix-functions/isalnum.texi: Document the 4 alternative APIs.
+       * doc/posix-functions/isalpha.texi: Likewise.
+       * doc/posix-functions/isblank.texi: Likewise.
+       * doc/posix-functions/iscntrl.texi: Likewise.
+       * doc/posix-functions/isdigit.texi: Likewise.
+       * doc/posix-functions/isgraph.texi: Likewise.
+       * doc/posix-functions/islower.texi: Likewise.
+       * doc/posix-functions/isprint.texi: Likewise.
+       * doc/posix-functions/ispunct.texi: Likewise.
+       * doc/posix-functions/isspace.texi: Likewise.
+       * doc/posix-functions/isupper.texi: Likewise.
+       * doc/posix-functions/isxdigit.texi: Likewise.
+
 2009-10-18  Bruno Haible  <bruno@clisp.org>
 
        Tests for module 'isblank'.
index 5147b7c..313c58e 100644 (file)
@@ -13,3 +13,28 @@ Portability problems fixed by Gnulib:
 Portability problems not fixed by Gnulib:
 @itemize
 @end itemize
+
+Note: This function's behaviour depends on the locale, but does not support
+the multibyte characters that occur in strings in locales with
+@code{MB_CUR_MAX > 1} (this includes all the common UTF-8 locales).
+There are four alternative APIs:
+
+@table @code
+@item c_isalnum
+This function operates in a locale independent way and returns true only for
+ASCII characters.  It is provided by the Gnulib module @samp{c-ctype}.
+
+@item iswalnum
+This function operates in a locale dependent way, on wide characters.  In
+order to use it, you first have to convert from multibyte to wide characters,
+using the @code{mbrtowc} function.  It is provided by the Gnulib module
+@samp{wctype}.
+
+@item mb_isalnum
+This function operates in a locale dependent way, on multibyte characters.
+It is provided by the Gnulib module @samp{mbchar}.
+
+@item uc_is_alnum
+This function operates in a locale independent way, on Unicode characters.
+It is provided by the Gnulib module @samp{unictype/ctype-alnum}.
+@end table
index 4ba0997..6d0a58a 100644 (file)
@@ -13,3 +13,28 @@ Portability problems fixed by Gnulib:
 Portability problems not fixed by Gnulib:
 @itemize
 @end itemize
+
+Note: This function's behaviour depends on the locale, but does not support
+the multibyte characters that occur in strings in locales with
+@code{MB_CUR_MAX > 1} (this includes all the common UTF-8 locales).
+There are four alternative APIs:
+
+@table @code
+@item c_isalpha
+This function operates in a locale independent way and returns true only for
+ASCII characters.  It is provided by the Gnulib module @samp{c-ctype}.
+
+@item iswalpha
+This function operates in a locale dependent way, on wide characters.  In
+order to use it, you first have to convert from multibyte to wide characters,
+using the @code{mbrtowc} function.  It is provided by the Gnulib module
+@samp{wctype}.
+
+@item mb_isalpha
+This function operates in a locale dependent way, on multibyte characters.
+It is provided by the Gnulib module @samp{mbchar}.
+
+@item uc_is_alpha
+This function operates in a locale independent way, on Unicode characters.
+It is provided by the Gnulib module @samp{unictype/ctype-alpha}.
+@end table
index 4dd419a..d4ab2c2 100644 (file)
@@ -13,3 +13,18 @@ Portability problems fixed by Gnulib:
 Portability problems not fixed by Gnulib:
 @itemize
 @end itemize
+
+Note: This function's behaviour depends on the locale, but requires special
+handling for the multibyte characters that occur in strings in locales with
+@code{MB_CUR_MAX > 1} (this includes all the common UTF-8 locales).
+There are two alternative APIs:
+
+@table @code
+@item c_isascii
+This function operates in a locale independent way and returns true only for
+ASCII characters.  It is provided by the Gnulib module @samp{c-ctype}.
+
+@item mb_isascii
+This function operates in a locale dependent way, on multibyte characters.
+It is provided by the Gnulib module @samp{mbchar}.
+@end table
index 12bcd91..626bc7d 100644 (file)
@@ -16,3 +16,28 @@ AIX 4.3.2, IRIX 6.5, OSF/1 5.1, Solaris 9, mingw.
 Portability problems not fixed by Gnulib:
 @itemize
 @end itemize
+
+Note: This function's behaviour depends on the locale, but does not support
+the multibyte characters that occur in strings in locales with
+@code{MB_CUR_MAX > 1} (this includes all the common UTF-8 locales).
+There are four alternative APIs:
+
+@table @code
+@item c_isblank
+This function operates in a locale independent way and returns true only for
+ASCII characters.  It is provided by the Gnulib module @samp{c-ctype}.
+
+@item iswblank
+This function operates in a locale dependent way, on wide characters.  In
+order to use it, you first have to convert from multibyte to wide characters,
+using the @code{mbrtowc} function.  It is provided by the Gnulib module
+@samp{wctype}.
+
+@item mb_isblank
+This function operates in a locale dependent way, on multibyte characters.
+It is provided by the Gnulib module @samp{mbchar}.
+
+@item uc_is_blank
+This function operates in a locale independent way, on Unicode characters.
+It is provided by the Gnulib module @samp{unictype/ctype-blank}.
+@end table
index 5b89943..b01d3e3 100644 (file)
@@ -13,3 +13,28 @@ Portability problems fixed by Gnulib:
 Portability problems not fixed by Gnulib:
 @itemize
 @end itemize
+
+Note: This function's behaviour depends on the locale, but does not support
+the multibyte characters that occur in strings in locales with
+@code{MB_CUR_MAX > 1} (this includes all the common UTF-8 locales).
+There are four alternative APIs:
+
+@table @code
+@item c_iscntrl
+This function operates in a locale independent way and returns true only for
+ASCII characters.  It is provided by the Gnulib module @samp{c-ctype}.
+
+@item iswcntrl
+This function operates in a locale dependent way, on wide characters.  In
+order to use it, you first have to convert from multibyte to wide characters,
+using the @code{mbrtowc} function.  It is provided by the Gnulib module
+@samp{wctype}.
+
+@item mb_iscntrl
+This function operates in a locale dependent way, on multibyte characters.
+It is provided by the Gnulib module @samp{mbchar}.
+
+@item uc_is_cntrl
+This function operates in a locale independent way, on Unicode characters.
+It is provided by the Gnulib module @samp{unictype/ctype-cntrl}.
+@end table
index 3939cd4..51fcc4b 100644 (file)
@@ -13,3 +13,28 @@ Portability problems fixed by Gnulib:
 Portability problems not fixed by Gnulib:
 @itemize
 @end itemize
+
+Note: This function's behaviour depends on the locale, but does not support
+the multibyte characters that occur in strings in locales with
+@code{MB_CUR_MAX > 1} (this includes all the common UTF-8 locales).
+There are four alternative APIs:
+
+@table @code
+@item c_isdigit
+This function operates in a locale independent way and returns true only for
+ASCII characters.  It is provided by the Gnulib module @samp{c-ctype}.
+
+@item iswdigit
+This function operates in a locale dependent way, on wide characters.  In
+order to use it, you first have to convert from multibyte to wide characters,
+using the @code{mbrtowc} function.  It is provided by the Gnulib module
+@samp{wctype}.
+
+@item mb_isdigit
+This function operates in a locale dependent way, on multibyte characters.
+It is provided by the Gnulib module @samp{mbchar}.
+
+@item uc_is_digit
+This function operates in a locale independent way, on Unicode characters.
+It is provided by the Gnulib module @samp{unictype/ctype-digit}.
+@end table
index 27f901f..8832580 100644 (file)
@@ -13,3 +13,28 @@ Portability problems fixed by Gnulib:
 Portability problems not fixed by Gnulib:
 @itemize
 @end itemize
+
+Note: This function's behaviour depends on the locale, but does not support
+the multibyte characters that occur in strings in locales with
+@code{MB_CUR_MAX > 1} (this includes all the common UTF-8 locales).
+There are four alternative APIs:
+
+@table @code
+@item c_isgraph
+This function operates in a locale independent way and returns true only for
+ASCII characters.  It is provided by the Gnulib module @samp{c-ctype}.
+
+@item iswgraph
+This function operates in a locale dependent way, on wide characters.  In
+order to use it, you first have to convert from multibyte to wide characters,
+using the @code{mbrtowc} function.  It is provided by the Gnulib module
+@samp{wctype}.
+
+@item mb_isgraph
+This function operates in a locale dependent way, on multibyte characters.
+It is provided by the Gnulib module @samp{mbchar}.
+
+@item uc_is_graph
+This function operates in a locale independent way, on Unicode characters.
+It is provided by the Gnulib module @samp{unictype/ctype-graph}.
+@end table
index d6c3e4c..bfd3471 100644 (file)
@@ -13,3 +13,28 @@ Portability problems fixed by Gnulib:
 Portability problems not fixed by Gnulib:
 @itemize
 @end itemize
+
+Note: This function's behaviour depends on the locale, but does not support
+the multibyte characters that occur in strings in locales with
+@code{MB_CUR_MAX > 1} (this includes all the common UTF-8 locales).
+There are four alternative APIs:
+
+@table @code
+@item c_islower
+This function operates in a locale independent way and returns true only for
+ASCII characters.  It is provided by the Gnulib module @samp{c-ctype}.
+
+@item iswlower
+This function operates in a locale dependent way, on wide characters.  In
+order to use it, you first have to convert from multibyte to wide characters,
+using the @code{mbrtowc} function.  It is provided by the Gnulib module
+@samp{wctype}.
+
+@item mb_islower
+This function operates in a locale dependent way, on multibyte characters.
+It is provided by the Gnulib module @samp{mbchar}.
+
+@item uc_is_lower
+This function operates in a locale independent way, on Unicode characters.
+It is provided by the Gnulib module @samp{unictype/ctype-lower}.
+@end table
index ad3076b..6953719 100644 (file)
@@ -13,3 +13,28 @@ Portability problems fixed by Gnulib:
 Portability problems not fixed by Gnulib:
 @itemize
 @end itemize
+
+Note: This function's behaviour depends on the locale, but does not support
+the multibyte characters that occur in strings in locales with
+@code{MB_CUR_MAX > 1} (this includes all the common UTF-8 locales).
+There are four alternative APIs:
+
+@table @code
+@item c_isprint
+This function operates in a locale independent way and returns true only for
+ASCII characters.  It is provided by the Gnulib module @samp{c-ctype}.
+
+@item iswprint
+This function operates in a locale dependent way, on wide characters.  In
+order to use it, you first have to convert from multibyte to wide characters,
+using the @code{mbrtowc} function.  It is provided by the Gnulib module
+@samp{wctype}.
+
+@item mb_isprint
+This function operates in a locale dependent way, on multibyte characters.
+It is provided by the Gnulib module @samp{mbchar}.
+
+@item uc_is_print
+This function operates in a locale independent way, on Unicode characters.
+It is provided by the Gnulib module @samp{unictype/ctype-print}.
+@end table
index e6f9bb7..da9a23b 100644 (file)
@@ -13,3 +13,28 @@ Portability problems fixed by Gnulib:
 Portability problems not fixed by Gnulib:
 @itemize
 @end itemize
+
+Note: This function's behaviour depends on the locale, but does not support
+the multibyte characters that occur in strings in locales with
+@code{MB_CUR_MAX > 1} (this includes all the common UTF-8 locales).
+There are four alternative APIs:
+
+@table @code
+@item c_ispunct
+This function operates in a locale independent way and returns true only for
+ASCII characters.  It is provided by the Gnulib module @samp{c-ctype}.
+
+@item iswpunct
+This function operates in a locale dependent way, on wide characters.  In
+order to use it, you first have to convert from multibyte to wide characters,
+using the @code{mbrtowc} function.  It is provided by the Gnulib module
+@samp{wctype}.
+
+@item mb_ispunct
+This function operates in a locale dependent way, on multibyte characters.
+It is provided by the Gnulib module @samp{mbchar}.
+
+@item uc_is_punct
+This function operates in a locale independent way, on Unicode characters.
+It is provided by the Gnulib module @samp{unictype/ctype-punct}.
+@end table
index 408ffb0..a4cc3f3 100644 (file)
@@ -13,3 +13,28 @@ Portability problems fixed by Gnulib:
 Portability problems not fixed by Gnulib:
 @itemize
 @end itemize
+
+Note: This function's behaviour depends on the locale, but does not support
+the multibyte characters that occur in strings in locales with
+@code{MB_CUR_MAX > 1} (this includes all the common UTF-8 locales).
+There are four alternative APIs:
+
+@table @code
+@item c_isspace
+This function operates in a locale independent way and returns true only for
+ASCII characters.  It is provided by the Gnulib module @samp{c-ctype}.
+
+@item iswspace
+This function operates in a locale dependent way, on wide characters.  In
+order to use it, you first have to convert from multibyte to wide characters,
+using the @code{mbrtowc} function.  It is provided by the Gnulib module
+@samp{wctype}.
+
+@item mb_isspace
+This function operates in a locale dependent way, on multibyte characters.
+It is provided by the Gnulib module @samp{mbchar}.
+
+@item uc_is_space
+This function operates in a locale independent way, on Unicode characters.
+It is provided by the Gnulib module @samp{unictype/ctype-space}.
+@end table
index 378c830..f629f13 100644 (file)
@@ -13,3 +13,28 @@ Portability problems fixed by Gnulib:
 Portability problems not fixed by Gnulib:
 @itemize
 @end itemize
+
+Note: This function's behaviour depends on the locale, but does not support
+the multibyte characters that occur in strings in locales with
+@code{MB_CUR_MAX > 1} (this includes all the common UTF-8 locales).
+There are four alternative APIs:
+
+@table @code
+@item c_isupper
+This function operates in a locale independent way and returns true only for
+ASCII characters.  It is provided by the Gnulib module @samp{c-ctype}.
+
+@item iswupper
+This function operates in a locale dependent way, on wide characters.  In
+order to use it, you first have to convert from multibyte to wide characters,
+using the @code{mbrtowc} function.  It is provided by the Gnulib module
+@samp{wctype}.
+
+@item mb_isupper
+This function operates in a locale dependent way, on multibyte characters.
+It is provided by the Gnulib module @samp{mbchar}.
+
+@item uc_is_upper
+This function operates in a locale independent way, on Unicode characters.
+It is provided by the Gnulib module @samp{unictype/ctype-upper}.
+@end table
index e03106c..cc6133c 100644 (file)
@@ -13,3 +13,28 @@ Portability problems fixed by Gnulib:
 Portability problems not fixed by Gnulib:
 @itemize
 @end itemize
+
+Note: This function's behaviour depends on the locale, but does not support
+the multibyte characters that occur in strings in locales with
+@code{MB_CUR_MAX > 1} (this includes all the common UTF-8 locales).
+There are four alternative APIs:
+
+@table @code
+@item c_isxdigit
+This function operates in a locale independent way and returns true only for
+ASCII characters.  It is provided by the Gnulib module @samp{c-ctype}.
+
+@item iswxdigit
+This function operates in a locale dependent way, on wide characters.  In
+order to use it, you first have to convert from multibyte to wide characters,
+using the @code{mbrtowc} function.  It is provided by the Gnulib module
+@samp{wctype}.
+
+@item mb_isxdigit
+This function operates in a locale dependent way, on multibyte characters.
+It is provided by the Gnulib module @samp{mbchar}.
+
+@item uc_is_xdigit
+This function operates in a locale independent way, on Unicode characters.
+It is provided by the Gnulib module @samp{unictype/ctype-xdigit}.
+@end table