summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--doc/libunistring.texi4
-rw-r--r--doc/unicase.texi132
-rw-r--r--doc/uniconv.texi36
-rw-r--r--doc/unictype.texi290
-rw-r--r--doc/unigbrk.texi26
-rw-r--r--doc/unilbrk.texi16
-rw-r--r--doc/uniname.texi4
-rw-r--r--doc/uninorm.texi44
-rw-r--r--doc/unistdio.texi116
-rw-r--r--doc/unistr.texi246
-rw-r--r--doc/uniwbrk.texi10
-rw-r--r--doc/uniwidth.texi14
13 files changed, 476 insertions, 469 deletions
diff --git a/ChangeLog b/ChangeLog
index f13ccc6..e8d72f2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
2019-02-13 Bruno Haible <bruno@clisp.org>
+ doc: Make function declarations easier to read.
+ * doc/uni*.texi: Inside the argument list of function declarations, use
+ no-break spaces instead of spaces, except directly after a comma.
+ * doc/libunistring.texi: Bump copyright year.
+
+2019-02-13 Bruno Haible <bruno@clisp.org>
+
build: Put the .sym file in the source directory.
* lib/Makefile.am (libunistring.sym): Generate in the source directory.
(config.h): Update rule.
diff --git a/doc/libunistring.texi b/doc/libunistring.texi
index b35b1c6..9917262 100644
--- a/doc/libunistring.texi
+++ b/doc/libunistring.texi
@@ -98,7 +98,7 @@ This manual is for GNU libunistring.
@ignore
@c This was: @copying but it triggers a makeinfo 4.13 bug
-Copyright (C) 2001-2018 Free Software Foundation, Inc.
+Copyright (C) 2001-2019 Free Software Foundation, Inc.
This manual is free documentation. It is dually licensed under the
GNU FDL and the GNU GPL. This means that you can redistribute this
@@ -129,7 +129,7 @@ A copy of the license is included in @ref{GNU GPL}.
@page
@vskip 0pt plus 1filll
@c @insertcopying
-Copyright (C) 2001-2018 Free Software Foundation, Inc.
+Copyright (C) 2001-2019 Free Software Foundation, Inc.
This manual is free documentation. It is dually licensed under the
GNU FDL and the GNU GPL. This means that you can redistribute this
diff --git a/doc/unicase.texi b/doc/unicase.texi
index c445496..de8442c 100644
--- a/doc/unicase.texi
+++ b/doc/unicase.texi
@@ -33,15 +33,15 @@ German, Greek and Lithuanian. Better use the functions below that treat an
entire string at once and are language aware.
@end cartouche
-@deftypefun ucs4_t uc_toupper (ucs4_t @var{uc})
+@deftypefun ucs4_t uc_toupper (ucs4_t@tie{}@var{uc})
Returns the uppercase mapping of the Unicode character @var{uc}.
@end deftypefun
-@deftypefun ucs4_t uc_tolower (ucs4_t @var{uc})
+@deftypefun ucs4_t uc_tolower (ucs4_t@tie{}@var{uc})
Returns the lowercase mapping of the Unicode character @var{uc}.
@end deftypefun
-@deftypefun ucs4_t uc_totitle (ucs4_t @var{uc})
+@deftypefun ucs4_t uc_totitle (ucs4_t@tie{}@var{uc})
Returns the titlecase mapping of the Unicode character @var{uc}.
The titlecase mapping of a character is to be used when the character should
@@ -99,9 +99,9 @@ Returns the ISO 639 language code of the current locale.
Returns @code{""} if it is unknown, or in the "C" locale.
@end deftypefun
-@deftypefun {uint8_t *} u8_toupper (const uint8_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint8_t *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {uint16_t *} u16_toupper (const uint16_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint16_t *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {uint32_t *} u32_toupper (const uint32_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint32_t *@var{resultbuf}, size_t *@var{lengthp})
+@deftypefun {uint8_t *} u8_toupper (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint8_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {uint16_t *} u16_toupper (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint16_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {uint32_t *} u32_toupper (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint32_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
Returns the uppercase mapping of a string.
The @var{nf} argument identifies the normalization form to apply after the
@@ -111,9 +111,9 @@ The @var{resultbuf} and @var{lengthp} arguments are as described in
chapter @ref{Conventions}.
@end deftypefun
-@deftypefun {uint8_t *} u8_tolower (const uint8_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint8_t *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {uint16_t *} u16_tolower (const uint16_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint16_t *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {uint32_t *} u32_tolower (const uint32_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint32_t *@var{resultbuf}, size_t *@var{lengthp})
+@deftypefun {uint8_t *} u8_tolower (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint8_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {uint16_t *} u16_tolower (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint16_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {uint32_t *} u32_tolower (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint32_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
Returns the lowercase mapping of a string.
The @var{nf} argument identifies the normalization form to apply after the
@@ -123,9 +123,9 @@ The @var{resultbuf} and @var{lengthp} arguments are as described in
chapter @ref{Conventions}.
@end deftypefun
-@deftypefun {uint8_t *} u8_totitle (const uint8_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint8_t *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {uint16_t *} u16_totitle (const uint16_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint16_t *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {uint32_t *} u32_totitle (const uint32_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint32_t *@var{resultbuf}, size_t *@var{lengthp})
+@deftypefun {uint8_t *} u8_totitle (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint8_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {uint16_t *} u16_totitle (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint16_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {uint32_t *} u32_totitle (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint32_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
Returns the titlecase mapping of a string.
Mapping to title case means that, in each word, the first cased character
@@ -162,15 +162,15 @@ string.
The following functions return @code{casing_prefix_context_t} objects:
-@deftypefun casing_prefix_context_t u8_casing_prefix_context (const uint8_t *@var{s}, size_t @var{n})
-@deftypefunx casing_prefix_context_t u16_casing_prefix_context (const uint16_t *@var{s}, size_t @var{n})
-@deftypefunx casing_prefix_context_t u32_casing_prefix_context (const uint32_t *@var{s}, size_t @var{n})
+@deftypefun casing_prefix_context_t u8_casing_prefix_context (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n})
+@deftypefunx casing_prefix_context_t u16_casing_prefix_context (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n})
+@deftypefunx casing_prefix_context_t u32_casing_prefix_context (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n})
Returns the case-mapping context of a given prefix string.
@end deftypefun
-@deftypefun casing_prefix_context_t u8_casing_prefixes_context (const uint8_t *@var{s}, size_t @var{n}, casing_prefix_context_t @var{a_context})
-@deftypefunx casing_prefix_context_t u16_casing_prefixes_context (const uint16_t *@var{s}, size_t @var{n}, casing_prefix_context_t @var{a_context})
-@deftypefunx casing_prefix_context_t u32_casing_prefixes_context (const uint32_t *@var{s}, size_t @var{n}, casing_prefix_context_t @var{a_context})
+@deftypefun casing_prefix_context_t u8_casing_prefixes_context (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, casing_prefix_context_t@tie{}@var{a_context})
+@deftypefunx casing_prefix_context_t u16_casing_prefixes_context (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, casing_prefix_context_t@tie{}@var{a_context})
+@deftypefunx casing_prefix_context_t u32_casing_prefixes_context (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, casing_prefix_context_t@tie{}@var{a_context})
Returns the case-mapping context of the prefix concat(@var{a}, @var{s}),
given the case-mapping context of the prefix @var{a}.
@end deftypefun
@@ -188,15 +188,15 @@ string.
The following functions return @code{casing_suffix_context_t} objects:
-@deftypefun casing_suffix_context_t u8_casing_suffix_context (const uint8_t *@var{s}, size_t @var{n})
-@deftypefunx casing_suffix_context_t u16_casing_suffix_context (const uint16_t *@var{s}, size_t @var{n})
-@deftypefunx casing_suffix_context_t u32_casing_suffix_context (const uint32_t *@var{s}, size_t @var{n})
+@deftypefun casing_suffix_context_t u8_casing_suffix_context (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n})
+@deftypefunx casing_suffix_context_t u16_casing_suffix_context (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n})
+@deftypefunx casing_suffix_context_t u32_casing_suffix_context (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n})
Returns the case-mapping context of a given suffix string.
@end deftypefun
-@deftypefun casing_suffix_context_t u8_casing_suffixes_context (const uint8_t *@var{s}, size_t @var{n}, casing_suffix_context_t @var{a_context})
-@deftypefunx casing_suffix_context_t u16_casing_suffixes_context (const uint16_t *@var{s}, size_t @var{n}, casing_suffix_context_t @var{a_context})
-@deftypefunx casing_suffix_context_t u32_casing_suffixes_context (const uint32_t *@var{s}, size_t @var{n}, casing_suffix_context_t @var{a_context})
+@deftypefun casing_suffix_context_t u8_casing_suffixes_context (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, casing_suffix_context_t@tie{}@var{a_context})
+@deftypefunx casing_suffix_context_t u16_casing_suffixes_context (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, casing_suffix_context_t@tie{}@var{a_context})
+@deftypefunx casing_suffix_context_t u32_casing_suffixes_context (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, casing_suffix_context_t@tie{}@var{a_context})
Returns the case-mapping context of the suffix concat(@var{s}, @var{a}),
given the case-mapping context of the suffix @var{a}.
@end deftypefun
@@ -204,9 +204,9 @@ given the case-mapping context of the suffix @var{a}.
The following functions perform a case mapping, considering the
prefix context and the suffix context.
-@deftypefun {uint8_t *} u8_ct_toupper (const uint8_t *@var{s}, size_t @var{n}, casing_prefix_context_t @var{prefix_context}, casing_suffix_context_t @var{suffix_context}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint8_t *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {uint16_t *} u16_ct_toupper (const uint16_t *@var{s}, size_t @var{n}, casing_prefix_context_t @var{prefix_context}, casing_suffix_context_t @var{suffix_context}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint16_t *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {uint32_t *} u32_ct_toupper (const uint32_t *@var{s}, size_t @var{n}, casing_prefix_context_t @var{prefix_context}, casing_suffix_context_t @var{suffix_context}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint32_t *@var{resultbuf}, size_t *@var{lengthp})
+@deftypefun {uint8_t *} u8_ct_toupper (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, casing_prefix_context_t@tie{}@var{prefix_context}, casing_suffix_context_t@tie{}@var{suffix_context}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint8_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {uint16_t *} u16_ct_toupper (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, casing_prefix_context_t@tie{}@var{prefix_context}, casing_suffix_context_t@tie{}@var{suffix_context}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint16_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {uint32_t *} u32_ct_toupper (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, casing_prefix_context_t@tie{}@var{prefix_context}, casing_suffix_context_t@tie{}@var{suffix_context}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint32_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
Returns the uppercase mapping of a string that is surrounded by a prefix
and a suffix.
@@ -214,9 +214,9 @@ The @var{resultbuf} and @var{lengthp} arguments are as described in
chapter @ref{Conventions}.
@end deftypefun
-@deftypefun {uint8_t *} u8_ct_tolower (const uint8_t *@var{s}, size_t @var{n}, casing_prefix_context_t @var{prefix_context}, casing_suffix_context_t @var{suffix_context}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint8_t *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {uint16_t *} u16_ct_tolower (const uint16_t *@var{s}, size_t @var{n}, casing_prefix_context_t @var{prefix_context}, casing_suffix_context_t @var{suffix_context}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint16_t *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {uint32_t *} u32_ct_tolower (const uint32_t *@var{s}, size_t @var{n}, casing_prefix_context_t @var{prefix_context}, casing_suffix_context_t @var{suffix_context}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint32_t *@var{resultbuf}, size_t *@var{lengthp})
+@deftypefun {uint8_t *} u8_ct_tolower (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, casing_prefix_context_t@tie{}@var{prefix_context}, casing_suffix_context_t@tie{}@var{suffix_context}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint8_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {uint16_t *} u16_ct_tolower (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, casing_prefix_context_t@tie{}@var{prefix_context}, casing_suffix_context_t@tie{}@var{suffix_context}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint16_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {uint32_t *} u32_ct_tolower (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, casing_prefix_context_t@tie{}@var{prefix_context}, casing_suffix_context_t@tie{}@var{suffix_context}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint32_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
Returns the lowercase mapping of a string that is surrounded by a prefix
and a suffix.
@@ -224,9 +224,9 @@ The @var{resultbuf} and @var{lengthp} arguments are as described in
chapter @ref{Conventions}.
@end deftypefun
-@deftypefun {uint8_t *} u8_ct_totitle (const uint8_t *@var{s}, size_t @var{n}, casing_prefix_context_t @var{prefix_context}, casing_suffix_context_t @var{suffix_context}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint8_t *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {uint16_t *} u16_ct_totitle (const uint16_t *@var{s}, size_t @var{n}, casing_prefix_context_t @var{prefix_context}, casing_suffix_context_t @var{suffix_context}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint16_t *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {uint32_t *} u32_ct_totitle (const uint32_t *@var{s}, size_t @var{n}, casing_prefix_context_t @var{prefix_context}, casing_suffix_context_t @var{suffix_context}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint32_t *@var{resultbuf}, size_t *@var{lengthp})
+@deftypefun {uint8_t *} u8_ct_totitle (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, casing_prefix_context_t@tie{}@var{prefix_context}, casing_suffix_context_t@tie{}@var{suffix_context}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint8_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {uint16_t *} u16_ct_totitle (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, casing_prefix_context_t@tie{}@var{prefix_context}, casing_suffix_context_t@tie{}@var{suffix_context}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint16_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {uint32_t *} u32_ct_totitle (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, casing_prefix_context_t@tie{}@var{prefix_context}, casing_suffix_context_t@tie{}@var{suffix_context}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint32_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
Returns the titlecase mapping of a string that is surrounded by a prefix
and a suffix.
@@ -256,9 +256,9 @@ uint8_t result =
The following functions implement comparison that ignores differences in case
and normalization.
-@deftypefun {uint8_t *} u8_casefold (const uint8_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint8_t *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {uint16_t *} u16_casefold (const uint16_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint16_t *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {uint32_t *} u32_casefold (const uint32_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint32_t *@var{resultbuf}, size_t *@var{lengthp})
+@deftypefun {uint8_t *} u8_casefold (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint8_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {uint16_t *} u16_casefold (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint16_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {uint32_t *} u32_casefold (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint32_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
Returns the case folded string.
Comparing @code{u8_casefold (@var{s1})} and @code{u8_casefold (@var{s2})}
@@ -272,9 +272,9 @@ The @var{resultbuf} and @var{lengthp} arguments are as described in
chapter @ref{Conventions}.
@end deftypefun
-@deftypefun {uint8_t *} u8_ct_casefold (const uint8_t *@var{s}, size_t @var{n}, casing_prefix_context_t @var{prefix_context}, casing_suffix_context_t @var{suffix_context}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint8_t *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {uint16_t *} u16_ct_casefold (const uint16_t *@var{s}, size_t @var{n}, casing_prefix_context_t @var{prefix_context}, casing_suffix_context_t @var{suffix_context}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint16_t *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {uint32_t *} u32_ct_casefold (const uint32_t *@var{s}, size_t @var{n}, casing_prefix_context_t @var{prefix_context}, casing_suffix_context_t @var{suffix_context}, const char *@var{iso639_language}, uninorm_t @var{nf}, uint32_t *@var{resultbuf}, size_t *@var{lengthp})
+@deftypefun {uint8_t *} u8_ct_casefold (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, casing_prefix_context_t@tie{}@var{prefix_context}, casing_suffix_context_t@tie{}@var{suffix_context}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint8_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {uint16_t *} u16_ct_casefold (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, casing_prefix_context_t@tie{}@var{prefix_context}, casing_suffix_context_t@tie{}@var{suffix_context}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint16_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {uint32_t *} u32_ct_casefold (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, casing_prefix_context_t@tie{}@var{prefix_context}, casing_suffix_context_t@tie{}@var{suffix_context}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, uint32_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
Returns the case folded string. The case folding takes into account the
case mapping contexts of the prefix and suffix strings.
@@ -282,10 +282,10 @@ The @var{resultbuf} and @var{lengthp} arguments are as described in
chapter @ref{Conventions}.
@end deftypefun
-@deftypefun int u8_casecmp (const uint8_t *@var{s1}, size_t @var{n1}, const uint8_t *@var{s2}, size_t @var{n2}, const char *@var{iso639_language}, uninorm_t @var{nf}, int *@var{resultp})
-@deftypefunx int u16_casecmp (const uint16_t *@var{s1}, size_t @var{n1}, const uint16_t *@var{s2}, size_t @var{n2}, const char *@var{iso639_language}, uninorm_t @var{nf}, int *@var{resultp})
-@deftypefunx int u32_casecmp (const uint32_t *@var{s1}, size_t @var{n1}, const uint32_t *@var{s2}, size_t @var{n2}, const char *@var{iso639_language}, uninorm_t @var{nf}, int *@var{resultp})
-@deftypefunx int ulc_casecmp (const char *@var{s1}, size_t @var{n1}, const char *@var{s2}, size_t @var{n2}, const char *@var{iso639_language}, uninorm_t @var{nf}, int *@var{resultp})
+@deftypefun int u8_casecmp (const@tie{}uint8_t@tie{}*@var{s1}, size_t@tie{}@var{n1}, const@tie{}uint8_t@tie{}*@var{s2}, size_t@tie{}@var{n2}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, int@tie{}*@var{resultp})
+@deftypefunx int u16_casecmp (const@tie{}uint16_t@tie{}*@var{s1}, size_t@tie{}@var{n1}, const@tie{}uint16_t@tie{}*@var{s2}, size_t@tie{}@var{n2}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, int@tie{}*@var{resultp})
+@deftypefunx int u32_casecmp (const@tie{}uint32_t@tie{}*@var{s1}, size_t@tie{}@var{n1}, const@tie{}uint32_t@tie{}*@var{s2}, size_t@tie{}@var{n2}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, int@tie{}*@var{resultp})
+@deftypefunx int ulc_casecmp (const@tie{}char@tie{}*@var{s1}, size_t@tie{}@var{n1}, const@tie{}char@tie{}*@var{s2}, size_t@tie{}@var{n2}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, int@tie{}*@var{resultp})
Compares @var{s1} and @var{s2}, ignoring differences in case and normalization.
The @var{nf} argument identifies the normalization form to apply after the
@@ -303,10 +303,10 @@ Upon failure, returns -1 with @code{errno} set.
The following functions additionally take into account the sorting rules of the
current locale.
-@deftypefun {char *} u8_casexfrm (const uint8_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, uninorm_t @var{nf}, char *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {char *} u16_casexfrm (const uint16_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, uninorm_t @var{nf}, char *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {char *} u32_casexfrm (const uint32_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, uninorm_t @var{nf}, char *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {char *} ulc_casexfrm (const char *@var{s}, size_t @var{n}, const char *@var{iso639_language}, uninorm_t @var{nf}, char *@var{resultbuf}, size_t *@var{lengthp})
+@deftypefun {char *} u8_casexfrm (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, char@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {char *} u16_casexfrm (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, char@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {char *} u32_casexfrm (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, char@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {char *} ulc_casexfrm (const@tie{}char@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, char@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
Converts the string @var{s} of length @var{n} to a NUL-terminated byte
sequence, in such a way that comparing @code{u8_casexfrm (@var{s1})} and
@code{u8_casexfrm (@var{s2})} with the gnulib function @code{memcmp2} is
@@ -319,10 +319,10 @@ The @var{resultbuf} and @var{lengthp} arguments are as described in
chapter @ref{Conventions}.
@end deftypefun
-@deftypefun int u8_casecoll (const uint8_t *@var{s1}, size_t @var{n1}, const uint8_t *@var{s2}, size_t @var{n2}, const char *@var{iso639_language}, uninorm_t @var{nf}, int *@var{resultp})
-@deftypefunx int u16_casecoll (const uint16_t *@var{s1}, size_t @var{n1}, const uint16_t *@var{s2}, size_t @var{n2}, const char *@var{iso639_language}, uninorm_t @var{nf}, int *@var{resultp})
-@deftypefunx int u32_casecoll (const uint32_t *@var{s1}, size_t @var{n1}, const uint32_t *@var{s2}, size_t @var{n2}, const char *@var{iso639_language}, uninorm_t @var{nf}, int *@var{resultp})
-@deftypefunx int ulc_casecoll (const char *@var{s1}, size_t @var{n1}, const char *@var{s2}, size_t @var{n2}, const char *@var{iso639_language}, uninorm_t @var{nf}, int *@var{resultp})
+@deftypefun int u8_casecoll (const@tie{}uint8_t@tie{}*@var{s1}, size_t@tie{}@var{n1}, const@tie{}uint8_t@tie{}*@var{s2}, size_t@tie{}@var{n2}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, int@tie{}*@var{resultp})
+@deftypefunx int u16_casecoll (const@tie{}uint16_t@tie{}*@var{s1}, size_t@tie{}@var{n1}, const@tie{}uint16_t@tie{}*@var{s2}, size_t@tie{}@var{n2}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, int@tie{}*@var{resultp})
+@deftypefunx int u32_casecoll (const@tie{}uint32_t@tie{}*@var{s1}, size_t@tie{}@var{n1}, const@tie{}uint32_t@tie{}*@var{s2}, size_t@tie{}@var{n2}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, int@tie{}*@var{resultp})
+@deftypefunx int ulc_casecoll (const@tie{}char@tie{}*@var{s1}, size_t@tie{}@var{n1}, const@tie{}char@tie{}*@var{s2}, size_t@tie{}@var{n2}, const@tie{}char@tie{}*@var{iso639_language}, uninorm_t@tie{}@var{nf}, int@tie{}*@var{resultp})
Compares @var{s1} and @var{s2}, ignoring differences in case and normalization,
using the collation rules of the current locale.
@@ -344,33 +344,33 @@ The following functions determine whether a Unicode string is entirely in
upper case. or entirely in lower case, or entirely in title case, or already
case-folded.
-@deftypefun int u8_is_uppercase (const uint8_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, bool *@var{resultp})
-@deftypefunx int u16_is_uppercase (const uint16_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, bool *@var{resultp})
-@deftypefunx int u32_is_uppercase (const uint32_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, bool *@var{resultp})
+@deftypefun int u8_is_uppercase (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, bool@tie{}*@var{resultp})
+@deftypefunx int u16_is_uppercase (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, bool@tie{}*@var{resultp})
+@deftypefunx int u32_is_uppercase (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, bool@tie{}*@var{resultp})
Sets @code{*@var{resultp}} to true if mapping NFD(@var{s}) to upper case is
a no-op, or to false otherwise, and returns 0. Upon failure, returns -1 with
@code{errno} set.
@end deftypefun
-@deftypefun int u8_is_lowercase (const uint8_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, bool *@var{resultp})
-@deftypefunx int u16_is_lowercase (const uint16_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, bool *@var{resultp})
-@deftypefunx int u32_is_lowercase (const uint32_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, bool *@var{resultp})
+@deftypefun int u8_is_lowercase (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, bool@tie{}*@var{resultp})
+@deftypefunx int u16_is_lowercase (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, bool@tie{}*@var{resultp})
+@deftypefunx int u32_is_lowercase (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, bool@tie{}*@var{resultp})
Sets @code{*@var{resultp}} to true if mapping NFD(@var{s}) to lower case is
a no-op, or to false otherwise, and returns 0. Upon failure, returns -1 with
@code{errno} set.
@end deftypefun
-@deftypefun int u8_is_titlecase (const uint8_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, bool *@var{resultp})
-@deftypefunx int u16_is_titlecase (const uint16_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, bool *@var{resultp})
-@deftypefunx int u32_is_titlecase (const uint32_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, bool *@var{resultp})
+@deftypefun int u8_is_titlecase (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, bool@tie{}*@var{resultp})
+@deftypefunx int u16_is_titlecase (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, bool@tie{}*@var{resultp})
+@deftypefunx int u32_is_titlecase (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, bool@tie{}*@var{resultp})
Sets @code{*@var{resultp}} to true if mapping NFD(@var{s}) to title case is
a no-op, or to false otherwise, and returns 0. Upon failure, returns -1 with
@code{errno} set.
@end deftypefun
-@deftypefun int u8_is_casefolded (const uint8_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, bool *@var{resultp})
-@deftypefunx int u16_is_casefolded (const uint16_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, bool *@var{resultp})
-@deftypefunx int u32_is_casefolded (const uint32_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, bool *@var{resultp})
+@deftypefun int u8_is_casefolded (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, bool@tie{}*@var{resultp})
+@deftypefunx int u16_is_casefolded (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, bool@tie{}*@var{resultp})
+@deftypefunx int u32_is_casefolded (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, bool@tie{}*@var{resultp})
Sets @code{*@var{resultp}} to true if applying case folding to NFD(@var{S}) is
a no-op, or to false otherwise, and returns 0. Upon failure, returns -1 with
@code{errno} set.
@@ -379,9 +379,9 @@ a no-op, or to false otherwise, and returns 0. Upon failure, returns -1 with
The following functions determine whether case mappings have any effect on a
Unicode string.
-@deftypefun int u8_is_cased (const uint8_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, bool *@var{resultp})
-@deftypefunx int u16_is_cased (const uint16_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, bool *@var{resultp})
-@deftypefunx int u32_is_cased (const uint32_t *@var{s}, size_t @var{n}, const char *@var{iso639_language}, bool *@var{resultp})
+@deftypefun int u8_is_cased (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, bool@tie{}*@var{resultp})
+@deftypefunx int u16_is_cased (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, bool@tie{}*@var{resultp})
+@deftypefunx int u32_is_cased (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{iso639_language}, bool@tie{}*@var{resultp})
Sets @code{*@var{resultp}} to true if case matters for @var{s}, that is, if
mapping NFD(@var{s}) to either upper case or lower case or title case is not
a no-op. Set @code{*@var{resultp}} to false if NFD(@var{s}) maps to itself
diff --git a/doc/uniconv.texi b/doc/uniconv.texi
index 07cfa1b..2437a38 100644
--- a/doc/uniconv.texi
+++ b/doc/uniconv.texi
@@ -46,9 +46,9 @@ This handler produces an escape sequence @code{\u@var{xxxx}} or
The following functions convert between strings in a specified encoding and
Unicode strings.
-@deftypefun {uint8_t *} u8_conv_from_encoding (const char *@var{fromcode}, enum iconv_ilseq_handler @var{handler}, const char *@var{src}, size_t @var{srclen}, size_t *@var{offsets}, uint8_t *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {uint16_t *} u16_conv_from_encoding (const char *@var{fromcode}, enum iconv_ilseq_handler @var{handler}, const char *@var{src}, size_t @var{srclen}, size_t *@var{offsets}, uint16_t *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {uint32_t *} u32_conv_from_encoding (const char *@var{fromcode}, enum iconv_ilseq_handler @var{handler}, const char *@var{src}, size_t @var{srclen}, size_t *@var{offsets}, uint32_t *@var{resultbuf}, size_t *@var{lengthp})
+@deftypefun {uint8_t *} u8_conv_from_encoding (const@tie{}char@tie{}*@var{fromcode}, enum@tie{}iconv_ilseq_handler@tie{}@var{handler}, const@tie{}char@tie{}*@var{src}, size_t@tie{}@var{srclen}, size_t@tie{}*@var{offsets}, uint8_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {uint16_t *} u16_conv_from_encoding (const@tie{}char@tie{}*@var{fromcode}, enum@tie{}iconv_ilseq_handler@tie{}@var{handler}, const@tie{}char@tie{}*@var{src}, size_t@tie{}@var{srclen}, size_t@tie{}*@var{offsets}, uint16_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {uint32_t *} u32_conv_from_encoding (const@tie{}char@tie{}*@var{fromcode}, enum@tie{}iconv_ilseq_handler@tie{}@var{handler}, const@tie{}char@tie{}*@var{src}, size_t@tie{}@var{srclen}, size_t@tie{}*@var{offsets}, uint32_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
Converts an entire string, possibly including NUL bytes, from one encoding
to UTF-8 encoding.
@@ -78,9 +78,9 @@ In case of error: NULL is returned and @code{errno} is set.
Particular @code{errno} values: @code{EINVAL}, @code{EILSEQ}, @code{ENOMEM}.
@end deftypefun
-@deftypefun {char *} u8_conv_to_encoding (const char *@var{tocode}, enum iconv_ilseq_handler @var{handler}, const uint8_t *@var{src}, size_t @var{srclen}, size_t *@var{offsets}, char *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {char *} u16_conv_to_encoding (const char *@var{tocode}, enum iconv_ilseq_handler @var{handler}, const uint16_t *@var{src}, size_t @var{srclen}, size_t *@var{offsets}, char *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {char *} u32_conv_to_encoding (const char *@var{tocode}, enum iconv_ilseq_handler @var{handler}, const uint32_t *@var{src}, size_t @var{srclen}, size_t *@var{offsets}, char *@var{resultbuf}, size_t *@var{lengthp})
+@deftypefun {char *} u8_conv_to_encoding (const@tie{}char@tie{}*@var{tocode}, enum@tie{}iconv_ilseq_handler@tie{}@var{handler}, const@tie{}uint8_t@tie{}*@var{src}, size_t@tie{}@var{srclen}, size_t@tie{}*@var{offsets}, char@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {char *} u16_conv_to_encoding (const@tie{}char@tie{}*@var{tocode}, enum@tie{}iconv_ilseq_handler@tie{}@var{handler}, const@tie{}uint16_t@tie{}*@var{src}, size_t@tie{}@var{srclen}, size_t@tie{}*@var{offsets}, char@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {char *} u32_conv_to_encoding (const@tie{}char@tie{}*@var{tocode}, enum@tie{}iconv_ilseq_handler@tie{}@var{handler}, const@tie{}uint32_t@tie{}*@var{src}, size_t@tie{}@var{srclen}, size_t@tie{}*@var{offsets}, char@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
Converts an entire Unicode string, possibly including NUL units, from UTF-8
encoding to a given encoding.
@@ -113,9 +113,9 @@ Particular @code{errno} values: @code{EINVAL}, @code{EILSEQ}, @code{ENOMEM}.
The following functions convert between NUL terminated strings in a specified
encoding and NUL terminated Unicode strings.
-@deftypefun {uint8_t *} u8_strconv_from_encoding (const char *@var{string}, const char *@var{fromcode}, enum iconv_ilseq_handler @var{handler})
-@deftypefunx {uint16_t *} u16_strconv_from_encoding (const char *@var{string}, const char *@var{fromcode}, enum iconv_ilseq_handler @var{handler})
-@deftypefunx {uint32_t *} u32_strconv_from_encoding (const char *@var{string}, const char *@var{fromcode}, enum iconv_ilseq_handler @var{handler})
+@deftypefun {uint8_t *} u8_strconv_from_encoding (const@tie{}char@tie{}*@var{string}, const@tie{}char@tie{}*@var{fromcode}, enum@tie{}iconv_ilseq_handler@tie{}@var{handler})
+@deftypefunx {uint16_t *} u16_strconv_from_encoding (const@tie{}char@tie{}*@var{string}, const@tie{}char@tie{}*@var{fromcode}, enum@tie{}iconv_ilseq_handler@tie{}@var{handler})
+@deftypefunx {uint32_t *} u32_strconv_from_encoding (const@tie{}char@tie{}*@var{string}, const@tie{}char@tie{}*@var{fromcode}, enum@tie{}iconv_ilseq_handler@tie{}@var{handler})
Converts a NUL terminated string from a given encoding.
The result is @code{malloc} allocated, or NULL (with @var{errno} set) in case of error.
@@ -123,9 +123,9 @@ The result is @code{malloc} allocated, or NULL (with @var{errno} set) in case of
Particular @code{errno} values: @code{EILSEQ}, @code{ENOMEM}.
@end deftypefun
-@deftypefun {char *} u8_strconv_to_encoding (const uint8_t *@var{string}, const char *@var{tocode}, enum iconv_ilseq_handler @var{handler})
-@deftypefunx {char *} u16_strconv_to_encoding (const uint16_t *@var{string}, const char *@var{tocode}, enum iconv_ilseq_handler @var{handler})
-@deftypefunx {char *} u32_strconv_to_encoding (const uint32_t *@var{string}, const char *@var{tocode}, enum iconv_ilseq_handler @var{handler})
+@deftypefun {char *} u8_strconv_to_encoding (const@tie{}uint8_t@tie{}*@var{string}, const@tie{}char@tie{}*@var{tocode}, enum@tie{}iconv_ilseq_handler@tie{}@var{handler})
+@deftypefunx {char *} u16_strconv_to_encoding (const@tie{}uint16_t@tie{}*@var{string}, const@tie{}char@tie{}*@var{tocode}, enum@tie{}iconv_ilseq_handler@tie{}@var{handler})
+@deftypefunx {char *} u32_strconv_to_encoding (const@tie{}uint32_t@tie{}*@var{string}, const@tie{}char@tie{}*@var{tocode}, enum@tie{}iconv_ilseq_handler@tie{}@var{handler})
Converts a NUL terminated string to a given encoding.
The result is @code{malloc} allocated, or NULL (with @code{errno} set) in case of error.
@@ -136,9 +136,9 @@ Particular @code{errno} values: @code{EILSEQ}, @code{ENOMEM}.
The following functions are shorthands that convert between NUL terminated
strings in locale encoding and NUL terminated Unicode strings.
-@deftypefun {uint8_t *} u8_strconv_from_locale (const char *@var{string})
-@deftypefunx {uint16_t *} u16_strconv_from_locale (const char *@var{string})
-@deftypefunx {uint32_t *} u32_strconv_from_locale (const char *@var{string})
+@deftypefun {uint8_t *} u8_strconv_from_locale (const@tie{}char@tie{}*@var{string})
+@deftypefunx {uint16_t *} u16_strconv_from_locale (const@tie{}char@tie{}*@var{string})
+@deftypefunx {uint32_t *} u32_strconv_from_locale (const@tie{}char@tie{}*@var{string})
Converts a NUL terminated string from the locale encoding.
The result is @code{malloc} allocated, or NULL (with @code{errno} set) in case of error.
@@ -146,9 +146,9 @@ The result is @code{malloc} allocated, or NULL (with @code{errno} set) in case o
Particular @code{errno} values: @code{ENOMEM}.
@end deftypefun
-@deftypefun {char *} u8_strconv_to_locale (const uint8_t *@var{string})
-@deftypefunx {char *} u16_strconv_to_locale (const uint16_t *@var{string})
-@deftypefunx {char *} u32_strconv_to_locale (const uint32_t *@var{string})
+@deftypefun {char *} u8_strconv_to_locale (const@tie{}uint8_t@tie{}*@var{string})
+@deftypefunx {char *} u16_strconv_to_locale (const@tie{}uint16_t@tie{}*@var{string})
+@deftypefunx {char *} u32_strconv_to_locale (const@tie{}uint32_t@tie{}*@var{string})
Converts a NUL terminated string to the locale encoding.
The result is @code{malloc} allocated, or NULL (with @code{errno} set) in case of error.
diff --git a/doc/unictype.texi b/doc/unictype.texi
index 3d78db3..d23a9ac 100644
--- a/doc/unictype.texi
+++ b/doc/unictype.texi
@@ -263,19 +263,19 @@ Some code points in this category are invalid characters.
The following functions combine general categories, like in a boolean algebra,
except that there is no @samp{not} operation.
-@deftypefun uc_general_category_t uc_general_category_or (uc_general_category_t @var{category1}, uc_general_category_t @var{category2})
+@deftypefun uc_general_category_t uc_general_category_or (uc_general_category_t@tie{}@var{category1}, uc_general_category_t@tie{}@var{category2})
Returns the union of two general categories.
This corresponds to the unions of the two sets of characters.
@end deftypefun
-@deftypefun uc_general_category_t uc_general_category_and (uc_general_category_t @var{category1}, uc_general_category_t @var{category2})
+@deftypefun uc_general_category_t uc_general_category_and (uc_general_category_t@tie{}@var{category1}, uc_general_category_t@tie{}@var{category2})
Returns the intersection of two general categories as bit masks.
This @emph{does not} correspond to the intersection of the two sets of
characters.
@c Really??
@end deftypefun
-@deftypefun uc_general_category_t uc_general_category_and_not (uc_general_category_t @var{category1}, uc_general_category_t @var{category2})
+@deftypefun uc_general_category_t uc_general_category_and_not (uc_general_category_t@tie{}@var{category1}, uc_general_category_t@tie{}@var{category2})
Returns the intersection of a general category with the complement of a
second general category, as bit masks.
This @emph{does not} correspond to the intersection with complement, when
@@ -285,19 +285,19 @@ viewing the categories as sets of characters.
The following functions associate general categories with their name.
-@deftypefun {const char *} uc_general_category_name (uc_general_category_t @var{category})
+@deftypefun {const char *} uc_general_category_name (uc_general_category_t@tie{}@var{category})
Returns the name of a general category, more precisely, the abbreviated name.
Returns NULL if the general category corresponds to a bit mask that does not
have a name.
@end deftypefun
-@deftypefun {const char *} uc_general_category_long_name (uc_general_category_t @var{category})
+@deftypefun {const char *} uc_general_category_long_name (uc_general_category_t@tie{}@var{category})
Returns the long name of a general category.
Returns NULL if the general category corresponds to a bit mask that does not
have a name.
@end deftypefun
-@deftypefun uc_general_category_t uc_general_category_byname (const char *@var{category_name})
+@deftypefun uc_general_category_t uc_general_category_byname (const@tie{}char@tie{}*@var{category_name})
Returns the general category given by name, e.g@. @code{"Lu"}, or by long
name, e.g@. @code{"Uppercase Letter"}.
This lookup ignores spaces, underscores, or hyphens as word separators and is
@@ -306,13 +306,13 @@ case-insignificant.
The following functions view general categories as sets of Unicode characters.
-@deftypefun uc_general_category_t uc_general_category (ucs4_t @var{uc})
+@deftypefun uc_general_category_t uc_general_category (ucs4_t@tie{}@var{uc})
Returns the general category of a Unicode character.
This function uses a big table.
@end deftypefun
-@deftypefun bool uc_is_general_category (ucs4_t @var{uc}, uc_general_category_t @var{category})
+@deftypefun bool uc_is_general_category (ucs4_t@tie{}@var{uc}, uc_general_category_t@tie{}@var{category})
Tests whether a Unicode character belongs to a given category.
The @var{category} argument can be a predefined general category or the
combination of several predefined general categories.
@@ -366,7 +366,7 @@ Additional general categories may be added in the future.
The following function views general categories as sets of Unicode characters.
-@deftypefun bool uc_is_general_category_withtable (ucs4_t @var{uc}, uint32_t @var{bitmask})
+@deftypefun bool uc_is_general_category_withtable (ucs4_t@tie{}@var{uc}, uint32_t@tie{}@var{bitmask})
Tests whether a Unicode character belongs to a given category.
The @var{bitmask} argument can be a predefined general category bitmask or the
combination of several predefined general category bitmasks.
@@ -478,20 +478,20 @@ The canonical combining class value for ``Iota Subscript'' characters.
The following functions associate canonical combining classes with their name.
-@deftypefun {const char *} uc_combining_class_name (int @var{ccc})
+@deftypefun {const char *} uc_combining_class_name (int@tie{}@var{ccc})
Returns the name of a canonical combining class, more precisely, the
abbreviated name.
Returns NULL if the canonical combining class is a numeric value without a
name.
@end deftypefun
-@deftypefun {const char *} uc_combining_class_long_name (int @var{ccc})
+@deftypefun {const char *} uc_combining_class_long_name (int@tie{}@var{ccc})
Returns the long name of a canonical combining class.
Returns NULL if the canonical combining class is a numeric value without a
name.
@end deftypefun
-@deftypefun int uc_combining_class_byname (const char *@var{ccc_name})
+@deftypefun int uc_combining_class_byname (const@tie{}char@tie{}*@var{ccc_name})
Returns the canonical combining class given by name, e.g@. @code{"BL"}, or by
long name, e.g@. @code{"Below Left"}.
This lookup ignores spaces, underscores, or hyphens as word separators and is
@@ -500,7 +500,7 @@ case-insignificant.
The following function looks up the canonical combining class of a character.
-@deftypefun int uc_combining_class (ucs4_t @var{uc})
+@deftypefun int uc_combining_class (ucs4_t@tie{}@var{uc})
Returns the canonical combining class of a Unicode character.
@end deftypefun
@@ -597,17 +597,17 @@ The bidi class for ``Other Neutral'' characters.
The following functions implement the association between a bidirectional
category and its name.
-@deftypefun {const char *} uc_bidi_class_name (int @var{bidi_class})
-@deftypefunx {const char *} uc_bidi_category_name (int @var{category})
+@deftypefun {const char *} uc_bidi_class_name (int@tie{}@var{bidi_class})
+@deftypefunx {const char *} uc_bidi_category_name (int@tie{}@var{category})
Returns the name of a bidi class, more precisely, the abbreviated name.
@end deftypefun
-@deftypefun {const char *} uc_bidi_class_long_name (int @var{bidi_class})
+@deftypefun {const char *} uc_bidi_class_long_name (int@tie{}@var{bidi_class})
Returns the long name of a bidi class.
@end deftypefun
-@deftypefun int uc_bidi_class_byname (const char *@var{bidi_class_name})
-@deftypefunx int uc_bidi_category_byname (const char *@var{category_name})
+@deftypefun int uc_bidi_class_byname (const@tie{}char@tie{}*@var{bidi_class_name})
+@deftypefunx int uc_bidi_category_byname (const@tie{}char@tie{}*@var{category_name})
Returns the bidi class given by name, e.g@. @code{"LRE"}, or by long name,
e.g@. @code{"Left-to-Right Embedding"}.
This lookup ignores spaces, underscores, or hyphens as word separators and is
@@ -617,13 +617,13 @@ case-insignificant.
The following functions view bidirectional categories as sets of Unicode
characters.
-@deftypefun int uc_bidi_class (ucs4_t @var{uc})
-@deftypefunx int uc_bidi_category (ucs4_t @var{uc})
+@deftypefun int uc_bidi_class (ucs4_t@tie{}@var{uc})
+@deftypefunx int uc_bidi_category (ucs4_t@tie{}@var{uc})
Returns the bidi class of a Unicode character.
@end deftypefun
-@deftypefun bool uc_is_bidi_class (ucs4_t @var{uc}, int @var{bidi_class})
-@deftypefunx bool uc_is_bidi_category (ucs4_t @var{uc}, int @var{category})
+@deftypefun bool uc_is_bidi_class (ucs4_t@tie{}@var{uc}, int@tie{}@var{bidi_class})
+@deftypefunx bool uc_is_bidi_category (ucs4_t@tie{}@var{uc}, int@tie{}@var{category})
Tests whether a Unicode character belongs to a given bidi class.
@end deftypefun
@@ -636,7 +636,7 @@ Decimal digits (like the digits from @samp{0} to @samp{9}) exist in many
scripts. The following function converts a decimal digit character to its
numerical value.
-@deftypefun int uc_decimal_value (ucs4_t @var{uc})
+@deftypefun int uc_decimal_value (ucs4_t@tie{}@var{uc})
Returns the decimal digit value of a Unicode character.
The return value is an integer in the range 0..9, or -1 for characters that
do not represent a decimal digit.
@@ -651,7 +651,7 @@ Digit characters are like decimal digit characters, possibly in special forms,
like as superscript, subscript, or circled. The following function converts a
digit character to its numerical value.
-@deftypefun int uc_digit_value (ucs4_t @var{uc})
+@deftypefun int uc_digit_value (ucs4_t@tie{}@var{uc})
Returns the digit value of a Unicode character.
The return value is an integer in the range 0..9, or -1 for characters that
do not represent a digit.
@@ -678,7 +678,7 @@ An integer @var{n} is represented by @code{numerator = @var{n}},
The following function converts a number character to its numerical value.
-@deftypefun uc_fraction_t uc_numeric_value (ucs4_t @var{uc})
+@deftypefun uc_fraction_t uc_numeric_value (ucs4_t@tie{}@var{uc})
Returns the numeric value of a Unicode character.
The return value is a fraction, or the pseudo-fraction @code{@{ 0, 0 @}} for
characters that do not represent a number.
@@ -695,7 +695,7 @@ opening brace character, and so on.
The following function looks up the mirrored character of a Unicode character.
-@deftypefun bool uc_mirror_char (ucs4_t @var{uc}, ucs4_t *@var{puc})
+@deftypefun bool uc_mirror_char (ucs4_t@tie{}@var{uc}, ucs4_t@tie{}*@var{puc})
Stores the mirrored character of a Unicode character @var{uc} in
@code{*@var{puc}} and returns @code{true}, if it exists. Otherwise it
stores @var{uc} unmodified in @code{*@var{puc}} and returns @code{false}.
@@ -758,15 +758,15 @@ initial, medial, final, and isolated.
The following functions implement the association between a joining type
and its name.
-@deftypefun {const char *} uc_joining_type_name (int @var{joining_type})
+@deftypefun {const char *} uc_joining_type_name (int@tie{}@var{joining_type})
Returns the name of a joining type.
@end deftypefun
-@deftypefun {const char *} uc_joining_type_long_name (int @var{joining_type})
+@deftypefun {const char *} uc_joining_type_long_name (int@tie{}@var{joining_type})
Returns the long name of a joining type.
@end deftypefun
-@deftypefun int uc_joining_type_byname (const char *@var{joining_type_name})
+@deftypefun int uc_joining_type_byname (const@tie{}char@tie{}*@var{joining_type_name})
Returns the joining type given by name, e.g@. @code{"D"}, or by long name,
e.g@. @code{"Dual Joining}.
This lookup ignores spaces, underscores, or hyphens as word separators and is
@@ -775,7 +775,7 @@ case-insignificant.
The following function gives the joining type of every Unicode character.
-@deftypefun int uc_joining_type (ucs4_t @var{uc})
+@deftypefun int uc_joining_type (ucs4_t@tie{}@var{uc})
Returns the joining type of a Unicode character.
@end deftypefun
@@ -851,11 +851,11 @@ The joining group has the following possible values:
The following functions implement the association between a joining group
and its name.
-@deftypefun {const char *} uc_joining_group_name (int @var{joining_group})
+@deftypefun {const char *} uc_joining_group_name (int@tie{}@var{joining_group})
Returns the name of a joining group.
@end deftypefun
-@deftypefun int uc_joining_group_byname (const char *@var{joining_group_name})
+@deftypefun int uc_joining_group_byname (const@tie{}char@tie{}*@var{joining_group_name})
Returns the joining group given by name, e.g@. @code{"Teh_Marbuta"}.
This lookup ignores spaces, underscores, or hyphens as word separators and is
case-insignificant.
@@ -863,7 +863,7 @@ case-insignificant.
The following function gives the joining group of every Unicode character.
-@deftypefun int uc_joining_group (ucs4_t @var{uc})
+@deftypefun int uc_joining_group (ucs4_t@tie{}@var{uc})
Returns the joining group of a Unicode character.
@end deftypefun
@@ -1020,7 +1020,7 @@ Other miscellaneous properties are:
The following function looks up a property by its name.
-@deftypefun uc_property_t uc_property_byname (const char *@var{property_name})
+@deftypefun uc_property_t uc_property_byname (const@tie{}char@tie{}*@var{property_name})
Returns the property given by name, e.g@. @code{"White space"}. If a property
with the given name exists, the result will satisfy the
@code{uc_property_is_valid} predicate. Otherwise the result will not satisfy
@@ -1035,14 +1035,14 @@ This function references a big table of all predefined properties. Its use
can significantly increase the size of your application.
@end deftypefun
-@deftypefun bool uc_property_is_valid (uc_property_t property)
+@deftypefun bool uc_property_is_valid (uc_property_t@tie{}property)
Returns @code{true} when the given property is valid, or @code{false}
otherwise.
@end deftypefun
The following function views a property as a set of Unicode characters.
-@deftypefun bool uc_is_property (ucs4_t @var{uc}, uc_property_t @var{property})
+@deftypefun bool uc_is_property (ucs4_t@tie{}@var{uc}, uc_property_t@tie{}@var{property})
Tests whether the Unicode character @var{uc} has the given property.
@end deftypefun
@@ -1051,120 +1051,120 @@ Tests whether the Unicode character @var{uc} has the given property.
The following are general properties.
-@deftypefun bool uc_is_property_white_space (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_alphabetic (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_other_alphabetic (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_not_a_character (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_default_ignorable_code_point (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_other_default_ignorable_code_point (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_deprecated (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_logical_order_exception (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_variation_selector (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_private_use (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_unassigned_code_value (ucs4_t @var{uc})
+@deftypefun bool uc_is_property_white_space (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_alphabetic (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_other_alphabetic (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_not_a_character (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_default_ignorable_code_point (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_other_default_ignorable_code_point (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_deprecated (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_logical_order_exception (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_variation_selector (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_private_use (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_unassigned_code_value (ucs4_t@tie{}@var{uc})
@end deftypefun
The following properties are related to case folding.
-@deftypefun bool uc_is_property_uppercase (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_other_uppercase (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_lowercase (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_other_lowercase (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_titlecase (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_cased (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_case_ignorable (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_changes_when_lowercased (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_changes_when_uppercased (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_changes_when_titlecased (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_changes_when_casefolded (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_changes_when_casemapped (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_soft_dotted (ucs4_t @var{uc})
+@deftypefun bool uc_is_property_uppercase (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_other_uppercase (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_lowercase (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_other_lowercase (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_titlecase (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_cased (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_case_ignorable (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_changes_when_lowercased (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_changes_when_uppercased (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_changes_when_titlecased (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_changes_when_casefolded (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_changes_when_casemapped (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_soft_dotted (ucs4_t@tie{}@var{uc})
@end deftypefun
The following properties are related to identifiers.
-@deftypefun bool uc_is_property_id_start (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_other_id_start (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_id_continue (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_other_id_continue (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_xid_start (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_xid_continue (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_pattern_white_space (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_pattern_syntax (ucs4_t @var{uc})
+@deftypefun bool uc_is_property_id_start (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_other_id_start (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_id_continue (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_other_id_continue (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_xid_start (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_xid_continue (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_pattern_white_space (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_pattern_syntax (ucs4_t@tie{}@var{uc})
@end deftypefun
The following properties have an influence on shaping and rendering.
-@deftypefun bool uc_is_property_join_control (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_grapheme_base (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_grapheme_extend (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_other_grapheme_extend (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_grapheme_link (ucs4_t @var{uc})
+@deftypefun bool uc_is_property_join_control (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_grapheme_base (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_grapheme_extend (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_other_grapheme_extend (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_grapheme_link (ucs4_t@tie{}@var{uc})
@end deftypefun
The following properties relate to bidirectional reordering.
-@deftypefun bool uc_is_property_bidi_control (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_bidi_left_to_right (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_bidi_hebrew_right_to_left (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_bidi_arabic_right_to_left (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_bidi_european_digit (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_bidi_eur_num_separator (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_bidi_eur_num_terminator (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_bidi_arabic_digit (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_bidi_common_separator (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_bidi_block_separator (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_bidi_segment_separator (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_bidi_whitespace (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_bidi_non_spacing_mark (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_bidi_boundary_neutral (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_bidi_pdf (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_bidi_embedding_or_override (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_bidi_other_neutral (ucs4_t @var{uc})
+@deftypefun bool uc_is_property_bidi_control (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_bidi_left_to_right (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_bidi_hebrew_right_to_left (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_bidi_arabic_right_to_left (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_bidi_european_digit (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_bidi_eur_num_separator (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_bidi_eur_num_terminator (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_bidi_arabic_digit (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_bidi_common_separator (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_bidi_block_separator (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_bidi_segment_separator (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_bidi_whitespace (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_bidi_non_spacing_mark (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_bidi_boundary_neutral (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_bidi_pdf (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_bidi_embedding_or_override (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_bidi_other_neutral (ucs4_t@tie{}@var{uc})
@end deftypefun
The following properties deal with number representations.
-@deftypefun bool uc_is_property_hex_digit (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_ascii_hex_digit (ucs4_t @var{uc})
+@deftypefun bool uc_is_property_hex_digit (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_ascii_hex_digit (ucs4_t@tie{}@var{uc})
@end deftypefun
The following properties deal with CJK.
-@deftypefun bool uc_is_property_ideographic (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_unified_ideograph (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_radical (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_ids_binary_operator (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_ids_trinary_operator (ucs4_t @var{uc})
+@deftypefun bool uc_is_property_ideographic (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_unified_ideograph (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_radical (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_ids_binary_operator (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_ids_trinary_operator (ucs4_t@tie{}@var{uc})
@end deftypefun
Other miscellaneous properties are:
-@deftypefun bool uc_is_property_zero_width (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_space (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_non_break (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_iso_control (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_format_control (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_dash (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_hyphen (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_punctuation (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_line_separator (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_paragraph_separator (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_quotation_mark (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_sentence_terminal (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_terminal_punctuation (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_currency_symbol (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_math (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_other_math (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_paired_punctuation (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_left_of_pair (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_combining (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_composite (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_decimal_digit (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_numeric (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_diacritic (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_extender (ucs4_t @var{uc})
-@deftypefunx bool uc_is_property_ignorable_control (ucs4_t @var{uc})
+@deftypefun bool uc_is_property_zero_width (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_space (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_non_break (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_iso_control (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_format_control (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_dash (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_hyphen (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_punctuation (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_line_separator (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_paragraph_separator (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_quotation_mark (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_sentence_terminal (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_terminal_punctuation (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_currency_symbol (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_math (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_other_math (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_paired_punctuation (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_left_of_pair (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_combining (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_composite (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_decimal_digit (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_numeric (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_diacritic (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_extender (ucs4_t@tie{}@var{uc})
+@deftypefunx bool uc_is_property_ignorable_control (ucs4_t@tie{}@var{uc})
@end deftypefun
@node Scripts
@@ -1188,25 +1188,25 @@ The @code{name} field contains the name of the script.
@cindex Unicode character, script
The following functions look up a script.
-@deftypefun {const uc_script_t *} uc_script (ucs4_t @var{uc})
+@deftypefun {const uc_script_t *} uc_script (ucs4_t@tie{}@var{uc})
Returns the script of a Unicode character. Returns NULL if @var{uc} does not
belong to any script.
@end deftypefun
-@deftypefun {const uc_script_t *} uc_script_byname (const char *@var{script_name})
+@deftypefun {const uc_script_t *} uc_script_byname (const@tie{}char@tie{}*@var{script_name})
Returns the script given by its name, e.g@. @code{"HAN"}. Returns NULL if a
script with the given name does not exist.
@end deftypefun
The following function views a script as a set of Unicode characters.
-@deftypefun bool uc_is_script (ucs4_t @var{uc}, const uc_script_t *@var{script})
+@deftypefun bool uc_is_script (ucs4_t@tie{}@var{uc}, const@tie{}uc_script_t@tie{}*@var{script})
Tests whether a Unicode character belongs to a given script.
@end deftypefun
The following gives a global picture of all scripts.
-@deftypefun void uc_all_scripts (const uc_script_t **@var{scripts}, size_t *@var{count})
+@deftypefun void uc_all_scripts (const@tie{}uc_script_t@tie{}**@var{scripts}, size_t@tie{}*@var{count})
Get the list of all scripts. Stores a pointer to an array of all scripts in
@code{*@var{scripts}} and the length of this array in @code{*@var{count}}.
@end deftypefun
@@ -1239,19 +1239,19 @@ The @code{name} field is the name of the block.
@cindex Unicode character, block
The following function looks up a block.
-@deftypefun {const uc_block_t *} uc_block (ucs4_t @var{uc})
+@deftypefun {const uc_block_t *} uc_block (ucs4_t@tie{}@var{uc})
Returns the block a character belongs to.
@end deftypefun
The following function views a block as a set of Unicode characters.
-@deftypefun bool uc_is_block (ucs4_t @var{uc}, const uc_block_t *@var{block})
+@deftypefun bool uc_is_block (ucs4_t@tie{}@var{uc}, const@tie{}uc_block_t@tie{}*@var{block})
Tests whether a Unicode character belongs to a given block.
@end deftypefun
The following gives a global picture of all block.
-@deftypefun void uc_all_blocks (const uc_block_t **@var{blocks}, size_t *@var{count})
+@deftypefun void uc_all_blocks (const@tie{}uc_block_t@tie{}**@var{blocks}, size_t@tie{}*@var{count})
Get the list of all blocks. Stores a pointer to an array of all blocks in
@code{*@var{blocks}} and the length of this array in @code{*@var{count}}.
@end deftypefun
@@ -1265,11 +1265,11 @@ Get the list of all blocks. Stores a pointer to an array of all blocks in
The following properties are taken from language standards. The supported
language standards are ISO C 99 and Java.
-@deftypefun bool uc_is_c_whitespace (ucs4_t @var{uc})
+@deftypefun bool uc_is_c_whitespace (ucs4_t@tie{}@var{uc})
Tests whether a Unicode character is considered whitespace in ISO C 99.
@end deftypefun
-@deftypefun bool uc_is_java_whitespace (ucs4_t @var{uc})
+@deftypefun bool uc_is_java_whitespace (ucs4_t@tie{}@var{uc})
Tests whether a Unicode character is considered whitespace in Java.
@end deftypefun
@@ -1298,13 +1298,13 @@ The following function determine whether a given character can be a constituent
of an identifier in the given programming language.
@cindex Unicode character, validity in C identifiers
-@deftypefun int uc_c_ident_category (ucs4_t @var{uc})
+@deftypefun int uc_c_ident_category (ucs4_t@tie{}@var{uc})
Returns the categorization of a Unicode character with respect to the ISO C 99
identifier syntax.
@end deftypefun
@cindex Unicode character, validity in Java identifiers
-@deftypefun int uc_java_ident_category (ucs4_t @var{uc})
+@deftypefun int uc_java_ident_category (ucs4_t@tie{}@var{uc})
Returns the categorization of a Unicode character with respect to the Java
identifier syntax.
@end deftypefun
@@ -1321,63 +1321,63 @@ cannot reflect the more diverse reality of the Unicode character set. But
they can be a quick-and-dirty porting aid when migrating from @code{wchar_t}
APIs to Unicode strings.
-@deftypefun bool uc_is_alnum (ucs4_t @var{uc})
+@deftypefun bool uc_is_alnum (ucs4_t@tie{}@var{uc})
Tests for any character for which @code{uc_is_alpha} or @code{uc_is_digit} is
true.
@end deftypefun
-@deftypefun bool uc_is_alpha (ucs4_t @var{uc})
+@deftypefun bool uc_is_alpha (ucs4_t@tie{}@var{uc})
Tests for any character for which @code{uc_is_upper} or @code{uc_is_lower} is
true, or any character that is one of a locale-specific set of characters for
which none of @code{uc_is_cntrl}, @code{uc_is_digit}, @code{uc_is_punct}, or
@code{uc_is_space} is true.
@end deftypefun
-@deftypefun bool uc_is_cntrl (ucs4_t @var{uc})
+@deftypefun bool uc_is_cntrl (ucs4_t@tie{}@var{uc})
Tests for any control character.
@end deftypefun
-@deftypefun bool uc_is_digit (ucs4_t @var{uc})
+@deftypefun bool uc_is_digit (ucs4_t@tie{}@var{uc})
Tests for any character that corresponds to a decimal-digit character.
@end deftypefun
-@deftypefun bool uc_is_graph (ucs4_t @var{uc})
+@deftypefun bool uc_is_graph (ucs4_t@tie{}@var{uc})
Tests for any character for which @code{uc_is_print} is true and
@code{uc_is_space} is false.
@end deftypefun
-@deftypefun bool uc_is_lower (ucs4_t @var{uc})
+@deftypefun bool uc_is_lower (ucs4_t@tie{}@var{uc})
Tests for any character that corresponds to a lowercase letter or is one
of a locale-specific set of characters for which none of @code{uc_is_cntrl},
@code{uc_is_digit}, @code{uc_is_punct}, or @code{uc_is_space} is true.
@end deftypefun
-@deftypefun bool uc_is_print (ucs4_t @var{uc})
+@deftypefun bool uc_is_print (ucs4_t@tie{}@var{uc})
Tests for any printing character.
@end deftypefun
-@deftypefun bool uc_is_punct (ucs4_t @var{uc})
+@deftypefun bool uc_is_punct (ucs4_t@tie{}@var{uc})
Tests for any printing character that is one of a locale-specific set of
characters for which neither @code{uc_is_space} nor @code{uc_is_alnum} is true.
@end deftypefun
-@deftypefun bool uc_is_space (ucs4_t @var{uc})
+@deftypefun bool uc_is_space (ucs4_t@tie{}@var{uc})
Test for any character that corresponds to a locale-specific set of characters
for which none of @code{uc_is_alnum}, @code{uc_is_graph}, or @code{uc_is_punct}
is true.
@end deftypefun
-@deftypefun bool uc_is_upper (ucs4_t @var{uc})
+@deftypefun bool uc_is_upper (ucs4_t@tie{}@var{uc})
Tests for any character that corresponds to an uppercase letter or is one
of a locale-specific set of characters for which none of @code{uc_is_cntrl},
@code{uc_is_digit}, @code{uc_is_punct}, or @code{uc_is_space} is true.
@end deftypefun
-@deftypefun bool uc_is_xdigit (ucs4_t @var{uc})
+@deftypefun bool uc_is_xdigit (ucs4_t@tie{}@var{uc})
Tests for any character that corresponds to a hexadecimal-digit character.
@end deftypefun
-@deftypefun bool uc_is_blank (ucs4_t @var{uc})
+@deftypefun bool uc_is_blank (ucs4_t@tie{}@var{uc})
Tests for any character that corresponds to a standard blank character or
a locale-specific set of characters for which @code{uc_is_alnum} is false.
@end deftypefun
diff --git a/doc/unigbrk.texi b/doc/unigbrk.texi
index a8f9c52..af4d996 100644
--- a/doc/unigbrk.texi
+++ b/doc/unigbrk.texi
@@ -38,9 +38,9 @@ clusters.
The following functions find a single boundary between grapheme
clusters in a string.
-@deftypefun void u8_grapheme_next (const uint8_t *@var{s}, const uint8_t *@var{end})
-@deftypefunx void u16_grapheme_next (const uint16_t *@var{s}, const uint16_t *@var{end})
-@deftypefunx void u32_grapheme_next (const uint32_t *@var{s}, const uint32_t *@var{end})
+@deftypefun void u8_grapheme_next (const@tie{}uint8_t@tie{}*@var{s}, const@tie{}uint8_t@tie{}*@var{end})
+@deftypefunx void u16_grapheme_next (const@tie{}uint16_t@tie{}*@var{s}, const@tie{}uint16_t@tie{}*@var{end})
+@deftypefunx void u32_grapheme_next (const@tie{}uint32_t@tie{}*@var{s}, const@tie{}uint32_t@tie{}*@var{end})
Returns the start of the next grapheme cluster following @var{s},
or @var{end} if no grapheme cluster break is encountered before it.
Returns NULL if and only if @code{@var{s} == @var{end}}.
@@ -51,9 +51,9 @@ determine the boundary. Use @func{_grapheme_breaks} functions for such
cases.
@end deftypefun
-@deftypefun void u8_grapheme_prev (const uint8_t *@var{s}, const uint8_t *@var{start})
-@deftypefunx void u16_grapheme_prev (const uint16_t *@var{s}, const uint16_t *@var{start})
-@deftypefunx void u32_grapheme_prev (const uint32_t *@var{s}, const uint32_t *@var{start})
+@deftypefun void u8_grapheme_prev (const@tie{}uint8_t@tie{}*@var{s}, const@tie{}uint8_t@tie{}*@var{start})
+@deftypefunx void u16_grapheme_prev (const@tie{}uint16_t@tie{}*@var{s}, const@tie{}uint16_t@tie{}*@var{start})
+@deftypefunx void u32_grapheme_prev (const@tie{}uint32_t@tie{}*@var{s}, const@tie{}uint32_t@tie{}*@var{start})
Returns the start of the grapheme cluster preceding @var{s}, or
@var{start} if no grapheme cluster break is encountered before it.
Returns NULL if and only if @code{@var{s} == @var{start}}.
@@ -67,11 +67,11 @@ cases.
The following functions determine all of the grapheme cluster
boundaries in a string.
-@deftypefun void u8_grapheme_breaks (const uint8_t *@var{s}, size_t @var{n}, char *@var{p})
-@deftypefunx void u16_grapheme_breaks (const uint16_t *@var{s}, size_t @var{n}, char *@var{p})
-@deftypefunx void u32_grapheme_breaks (const uint32_t *@var{s}, size_t @var{n}, char *@var{p})
-@deftypefunx void ulc_grapheme_breaks (const char *@var{s}, size_t @var{n}, char *@var{p})
-@deftypefunx void uc_grapheme_breaks (const ucs_t *@var{s}, size_t @var{n}, char *@var{p})
+@deftypefun void u8_grapheme_breaks (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, char@tie{}*@var{p})
+@deftypefunx void u16_grapheme_breaks (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, char@tie{}*@var{p})
+@deftypefunx void u32_grapheme_breaks (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, char@tie{}*@var{p})
+@deftypefunx void ulc_grapheme_breaks (const@tie{}char@tie{}*@var{s}, size_t@tie{}@var{n}, char@tie{}*@var{p})
+@deftypefunx void uc_grapheme_breaks (const@tie{}ucs_t@tie{}*@var{s}, size_t@tie{}@var{n}, char@tie{}*@var{p})
Determines the grapheme cluster break points in @var{s}, an array of
@var{n} units, and stores the result at @code{@var{p}[0..@var{nx}-1]}.
@table @asis
@@ -128,7 +128,7 @@ property. More values may be added in the future.
The following function looks up the grapheme cluster break property of a
character.
-@deftypefun int uc_graphemeclusterbreak_property (ucs4_t @var{uc})
+@deftypefun int uc_graphemeclusterbreak_property (ucs4_t@tie{}@var{uc})
Returns the Grapheme_Cluster_Break property of a Unicode character.
@end deftypefun
@@ -136,7 +136,7 @@ The following function determines whether there is a grapheme cluster
break between two Unicode characters. It is the primitive upon which
the higher-level functions in the previous section are directly based.
-@deftypefun bool uc_is_grapheme_break (ucs4_t @var{a}, ucs4_t @var{b})
+@deftypefun bool uc_is_grapheme_break (ucs4_t@tie{}@var{a}, ucs4_t@tie{}@var{b})
Returns true if there is an grapheme cluster boundary between Unicode
characters @var{a} and @var{b}.
diff --git a/doc/unilbrk.texi b/doc/unilbrk.texi
index 5441f31..91e5863 100644
--- a/doc/unilbrk.texi
+++ b/doc/unilbrk.texi
@@ -45,10 +45,10 @@ override.
The following functions determine the positions at which line breaks are
possible.
-@deftypefun void u8_possible_linebreaks (const uint8_t *@var{s}, size_t @var{n}, const char *@var{encoding}, char *@var{p})
-@deftypefunx void u16_possible_linebreaks (const uint16_t *@var{s}, size_t @var{n}, const char *@var{encoding}, char *@var{p})
-@deftypefunx void u32_possible_linebreaks (const uint32_t *@var{s}, size_t @var{n}, const char *@var{encoding}, char *@var{p})
-@deftypefunx void ulc_possible_linebreaks (const char *@var{s}, size_t @var{n}, const char *@var{encoding}, char *@var{p})
+@deftypefun void u8_possible_linebreaks (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{encoding}, char@tie{}*@var{p})
+@deftypefunx void u16_possible_linebreaks (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{encoding}, char@tie{}*@var{p})
+@deftypefunx void u32_possible_linebreaks (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{encoding}, char@tie{}*@var{p})
+@deftypefunx void ulc_possible_linebreaks (const@tie{}char@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{encoding}, char@tie{}*@var{p})
Determines the line break points in @var{s}, and stores the result at
@code{@var{p}[0..@var{n}-1]}. Every @code{@var{p}[@var{i}]} is assigned one of
the values @code{UC_BREAK_MANDATORY}, @code{UC_BREAK_POSSIBLE},
@@ -59,10 +59,10 @@ The following functions determine where line breaks should be inserted so that
each line fits in a given width, when output to a device that uses
non-proportional fonts.
-@deftypefun int u8_width_linebreaks (const uint8_t *@var{s}, size_t @var{n}, int @var{width}, int @var{start_column}, int @var{at_end_columns}, const char *@var{override}, const char *@var{encoding}, char *@var{p})
-@deftypefunx int u16_width_linebreaks (const uint16_t *@var{s}, size_t @var{n}, int @var{width}, int @var{start_column}, int @var{at_end_columns}, const char *@var{override}, const char *@var{encoding}, char *@var{p})
-@deftypefunx int u32_width_linebreaks (const uint32_t *@var{s}, size_t @var{n}, int @var{width}, int @var{start_column}, int @var{at_end_columns}, const char *@var{override}, const char *@var{encoding}, char *@var{p})
-@deftypefunx int ulc_width_linebreaks (const char *@var{s}, size_t @var{n}, int @var{width}, int @var{start_column}, int @var{at_end_columns}, const char *@var{override}, const char *@var{encoding}, char *@var{p})
+@deftypefun int u8_width_linebreaks (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, int@tie{}@var{width}, int@tie{}@var{start_column}, int@tie{}@var{at_end_columns}, const@tie{}char@tie{}*@var{override}, const@tie{}char@tie{}*@var{encoding}, char@tie{}*@var{p})
+@deftypefunx int u16_width_linebreaks (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, int@tie{}@var{width}, int@tie{}@var{start_column}, int@tie{}@var{at_end_columns}, const@tie{}char@tie{}*@var{override}, const@tie{}char@tie{}*@var{encoding}, char@tie{}*@var{p})
+@deftypefunx int u32_width_linebreaks (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, int@tie{}@var{width}, int@tie{}@var{start_column}, int@tie{}@var{at_end_columns}, const@tie{}char@tie{}*@var{override}, const@tie{}char@tie{}*@var{encoding}, char@tie{}*@var{p})
+@deftypefunx int ulc_width_linebreaks (const@tie{}char@tie{}*@var{s}, size_t@tie{}@var{n}, int@tie{}@var{width}, int@tie{}@var{start_column}, int@tie{}@var{at_end_columns}, const@tie{}char@tie{}*@var{override}, const@tie{}char@tie{}*@var{encoding}, char@tie{}*@var{p})
Chooses the best line breaks, assuming that every character occupies a width
given by the @code{uc_width} function (see @ref{uniwidth.h}).
diff --git a/doc/uniname.texi b/doc/uniname.texi
index fa57147..72ad547 100644
--- a/doc/uniname.texi
+++ b/doc/uniname.texi
@@ -15,13 +15,13 @@ This macro expands to a constant that is the required size of buffer for a
Unicode character name.
@end deftypevr
-@deftypefun {char *} unicode_character_name (ucs4_t @var{uc}, char *@var{buf})
+@deftypefun {char *} unicode_character_name (ucs4_t@tie{}@var{uc}, char@tie{}*@var{buf})
Looks up the name of a Unicode character, in uppercase ASCII.
@var{buf} must point to a buffer, at least @code{UNINAME_MAX} bytes in size.
Returns the filled @var{buf}, or NULL if the character does not have a name.
@end deftypefun
-@deftypefun ucs4_t unicode_name_character (const char *@var{name})
+@deftypefun ucs4_t unicode_name_character (const@tie{}char@tie{}*@var{name})
Looks up the Unicode character with a given name, in upper- or lowercase
ASCII. @var{NAME} can also be an alias name of a character.
Returns the character if found, or @code{UNINAME_INVALID} if not found.
diff --git a/doc/uninorm.texi b/doc/uninorm.texi
index ad7a1da..f3a6574 100644
--- a/doc/uninorm.texi
+++ b/doc/uninorm.texi
@@ -116,7 +116,7 @@ the @code{uc_decomposition} and @code{uc_canonical_decomposition} functions.
The following functions decompose a Unicode character.
-@deftypefun int uc_decomposition (ucs4_t @var{uc}, int *@var{decomp_tag}, ucs4_t *@var{decomposition})
+@deftypefun int uc_decomposition (ucs4_t@tie{}@var{uc}, int@tie{}*@var{decomp_tag}, ucs4_t@tie{}*@var{decomposition})
Returns the character decomposition mapping of the Unicode character @var{uc}.
@var{decomposition} must point to an array of at least
@code{UC_DECOMPOSITION_MAX_LENGTH} @code{ucs_t} elements.
@@ -126,7 +126,7 @@ When a decomposition exists, @code{@var{decomposition}[0..@var{n}-1]} and
returned.
@end deftypefun
-@deftypefun int uc_canonical_decomposition (ucs4_t @var{uc}, ucs4_t *@var{decomposition})
+@deftypefun int uc_canonical_decomposition (ucs4_t@tie{}@var{uc}, ucs4_t@tie{}*@var{decomposition})
Returns the canonical character decomposition mapping of the Unicode character
@var{uc}. @var{decomposition} must point to an array of at least
@code{UC_DECOMPOSITION_MAX_LENGTH} @code{ucs_t} elements.
@@ -148,7 +148,7 @@ function @code{u*_normalize} with argument @code{UNINORM_NFD} instead.
The following function composes a Unicode character from two Unicode
characters.
-@deftypefun ucs4_t uc_composition (ucs4_t @var{uc1}, ucs4_t @var{uc2})
+@deftypefun ucs4_t uc_composition (ucs4_t@tie{}@var{uc1}, ucs4_t@tie{}@var{uc2})
Attempts to combine the Unicode characters @var{uc1}, @var{uc2}.
@var{uc1} is known to have canonical combining class 0.
@@ -190,24 +190,24 @@ Normalization form KC: compatibility decomposition, then canonical composition.
The following functions operate on @code{uninorm_t} objects.
-@deftypefun bool uninorm_is_compat_decomposing (uninorm_t @var{nf})
+@deftypefun bool uninorm_is_compat_decomposing (uninorm_t@tie{}@var{nf})
Tests whether the normalization form @var{nf} does compatibility decomposition.
@end deftypefun
-@deftypefun bool uninorm_is_composing (uninorm_t @var{nf})
+@deftypefun bool uninorm_is_composing (uninorm_t@tie{}@var{nf})
Tests whether the normalization form @var{nf} includes canonical composition.
@end deftypefun
-@deftypefun uninorm_t uninorm_decomposing_form (uninorm_t @var{nf})
+@deftypefun uninorm_t uninorm_decomposing_form (uninorm_t@tie{}@var{nf})
Returns the decomposing variant of the normalization form @var{nf}.
This maps NFC,NFD @arrow{} NFD and NFKC,NFKD @arrow{} NFKD.
@end deftypefun
The following functions apply a Unicode normalization form to a Unicode string.
-@deftypefun {uint8_t *} u8_normalize (uninorm_t @var{nf}, const uint8_t *@var{s}, size_t @var{n}, uint8_t *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {uint16_t *} u16_normalize (uninorm_t @var{nf}, const uint16_t *@var{s}, size_t @var{n}, uint16_t *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {uint32_t *} u32_normalize (uninorm_t @var{nf}, const uint32_t *@var{s}, size_t @var{n}, uint32_t *@var{resultbuf}, size_t *@var{lengthp})
+@deftypefun {uint8_t *} u8_normalize (uninorm_t@tie{}@var{nf}, const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, uint8_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {uint16_t *} u16_normalize (uninorm_t@tie{}@var{nf}, const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, uint16_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {uint32_t *} u32_normalize (uninorm_t@tie{}@var{nf}, const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, uint32_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
Returns the specified normalization form of a string.
The @var{resultbuf} and @var{lengthp} arguments are as described in
@@ -221,9 +221,9 @@ chapter @ref{Conventions}.
The following functions compare Unicode string, ignoring differences in
normalization.
-@deftypefun int u8_normcmp (const uint8_t *@var{s1}, size_t @var{n1}, const uint8_t *@var{s2}, size_t @var{n2}, uninorm_t @var{nf}, int *@var{resultp})
-@deftypefunx int u16_normcmp (const uint16_t *@var{s1}, size_t @var{n1}, const uint16_t *@var{s2}, size_t @var{n2}, uninorm_t @var{nf}, int *@var{resultp})
-@deftypefunx int u32_normcmp (const uint32_t *@var{s1}, size_t @var{n1}, const uint32_t *@var{s2}, size_t @var{n2}, uninorm_t @var{nf}, int *@var{resultp})
+@deftypefun int u8_normcmp (const@tie{}uint8_t@tie{}*@var{s1}, size_t@tie{}@var{n1}, const@tie{}uint8_t@tie{}*@var{s2}, size_t@tie{}@var{n2}, uninorm_t@tie{}@var{nf}, int@tie{}*@var{resultp})
+@deftypefunx int u16_normcmp (const@tie{}uint16_t@tie{}*@var{s1}, size_t@tie{}@var{n1}, const@tie{}uint16_t@tie{}*@var{s2}, size_t@tie{}@var{n2}, uninorm_t@tie{}@var{nf}, int@tie{}*@var{resultp})
+@deftypefunx int u32_normcmp (const@tie{}uint32_t@tie{}*@var{s1}, size_t@tie{}@var{n1}, const@tie{}uint32_t@tie{}*@var{s2}, size_t@tie{}@var{n2}, uninorm_t@tie{}@var{nf}, int@tie{}*@var{resultp})
Compares @var{s1} and @var{s2}, ignoring differences in normalization.
@var{nf} must be either @code{UNINORM_NFD} or @code{UNINORM_NFKD}.
@@ -235,9 +235,9 @@ Upon failure, returns -1 with @code{errno} set.
@cindex comparing, ignoring normalization, with collation rules
@cindex comparing, with collation rules, ignoring normalization
-@deftypefun {char *} u8_normxfrm (const uint8_t *@var{s}, size_t @var{n}, uninorm_t @var{nf}, char *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {char *} u16_normxfrm (const uint16_t *@var{s}, size_t @var{n}, uninorm_t @var{nf}, char *@var{resultbuf}, size_t *@var{lengthp})
-@deftypefunx {char *} u32_normxfrm (const uint32_t *@var{s}, size_t @var{n}, uninorm_t @var{nf}, char *@var{resultbuf}, size_t *@var{lengthp})
+@deftypefun {char *} u8_normxfrm (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, uninorm_t@tie{}@var{nf}, char@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {char *} u16_normxfrm (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, uninorm_t@tie{}@var{nf}, char@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
+@deftypefunx {char *} u32_normxfrm (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, uninorm_t@tie{}@var{nf}, char@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
Converts the string @var{s} of length @var{n} to a NUL-terminated byte
sequence, in such a way that comparing @code{u8_normxfrm (@var{s1})} and
@code{u8_normxfrm (@var{s2})} with the @code{u8_cmp2} function is equivalent to
@@ -249,9 +249,9 @@ The @var{resultbuf} and @var{lengthp} arguments are as described in
chapter @ref{Conventions}.
@end deftypefun
-@deftypefun int u8_normcoll (const uint8_t *@var{s1}, size_t @var{n1}, const uint8_t *@var{s2}, size_t @var{n2}, uninorm_t @var{nf}, int *@var{resultp})
-@deftypefunx int u16_normcoll (const uint16_t *@var{s1}, size_t @var{n1}, const uint16_t *@var{s2}, size_t @var{n2}, uninorm_t @var{nf}, int *@var{resultp})
-@deftypefunx int u32_normcoll (const uint32_t *@var{s1}, size_t @var{n1}, const uint32_t *@var{s2}, size_t @var{n2}, uninorm_t @var{nf}, int *@var{resultp})
+@deftypefun int u8_normcoll (const@tie{}uint8_t@tie{}*@var{s1}, size_t@tie{}@var{n1}, const@tie{}uint8_t@tie{}*@var{s2}, size_t@tie{}@var{n2}, uninorm_t@tie{}@var{nf}, int@tie{}*@var{resultp})
+@deftypefunx int u16_normcoll (const@tie{}uint16_t@tie{}*@var{s1}, size_t@tie{}@var{n1}, const@tie{}uint16_t@tie{}*@var{s2}, size_t@tie{}@var{n2}, uninorm_t@tie{}@var{nf}, int@tie{}*@var{resultp})
+@deftypefunx int u32_normcoll (const@tie{}uint32_t@tie{}*@var{s1}, size_t@tie{}@var{n1}, const@tie{}uint32_t@tie{}*@var{s2}, size_t@tie{}@var{n2}, uninorm_t@tie{}@var{nf}, int@tie{}*@var{resultp})
Compares @var{s1} and @var{s2}, ignoring differences in normalization, using
the collation rules of the current locale.
@@ -276,7 +276,7 @@ input according to a given normalization form and passes the normalized
character sequence to the encapsulated stream of Unicode characters.
@end deftp
-@deftypefun {struct uninorm_filter *} uninorm_filter_create (uninorm_t @var{nf}, int (*@var{stream_func}) (void *@var{stream_data}, ucs4_t @var{uc}), void *@var{stream_data})
+@deftypefun {struct uninorm_filter *} uninorm_filter_create (uninorm_t@tie{}@var{nf}, int@tie{}(*@var{stream_func})@tie{}(void@tie{}*@var{stream_data}, ucs4_t@tie{}@var{uc}), void@tie{}*@var{stream_data})
Creates and returns a normalization filter for Unicode characters.
The pair (@var{stream_func}, @var{stream_data}) is the encapsulated stream.
@@ -287,12 +287,12 @@ upon failure.
Returns the new filter, or NULL with @code{errno} set upon failure.
@end deftypefun
-@deftypefun int uninorm_filter_write (struct uninorm_filter *@var{filter}, ucs4_t @var{uc})
+@deftypefun int uninorm_filter_write (struct@tie{}uninorm_filter@tie{}*@var{filter}, ucs4_t@tie{}@var{uc})
Stuffs a Unicode character into a normalizing filter.
Returns 0 if successful, or -1 with @code{errno} set upon failure.
@end deftypefun
-@deftypefun int uninorm_filter_flush (struct uninorm_filter *@var{filter})
+@deftypefun int uninorm_filter_flush (struct@tie{}uninorm_filter@tie{}*@var{filter})
Brings data buffered in the filter to its destination, the encapsulated stream.
Returns 0 if successful, or -1 with @code{errno} set upon failure.
@@ -302,7 +302,7 @@ into the filter, the resulting character sequence in the encapsulated stream
will not necessarily be normalized.
@end deftypefun
-@deftypefun int uninorm_filter_free (struct uninorm_filter *@var{filter})
+@deftypefun int uninorm_filter_free (struct@tie{}uninorm_filter@tie{}*@var{filter})
Brings data buffered in the filter to its destination, the encapsulated stream,
then closes and frees the filter.
diff --git a/doc/unistdio.texi b/doc/unistdio.texi
index 8f1a0a1..fa0fc00 100644
--- a/doc/unistdio.texi
+++ b/doc/unistdio.texi
@@ -44,154 +44,154 @@ returned string. In case of error, NULL is returned and @code{errno} is set.
The following functions take an ASCII format string and return a result that
is a @code{char *} string in locale encoding.
-@deftypefun int ulc_sprintf (char *@var{buf}, const char *@var{format}, ...)
+@deftypefun int ulc_sprintf (char@tie{}*@var{buf}, const@tie{}char@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int ulc_snprintf (char *@var{buf}, size_t size, const char *@var{format}, ...)
+@deftypefun int ulc_snprintf (char@tie{}*@var{buf}, size_t@tie{}size, const@tie{}char@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int ulc_asprintf (char **@var{resultp}, const char *@var{format}, ...)
+@deftypefun int ulc_asprintf (char@tie{}**@var{resultp}, const@tie{}char@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun {char *} ulc_asnprintf (char *@var{resultbuf}, size_t *@var{lengthp}, const char *@var{format}, ...)
+@deftypefun {char *} ulc_asnprintf (char@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp}, const@tie{}char@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int ulc_vsprintf (char *@var{buf}, const char *@var{format}, va_list @var{ap})
+@deftypefun int ulc_vsprintf (char@tie{}*@var{buf}, const@tie{}char@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
-@deftypefun int ulc_vsnprintf (char *@var{buf}, size_t size, const char *@var{format}, va_list @var{ap})
+@deftypefun int ulc_vsnprintf (char@tie{}*@var{buf}, size_t@tie{}size, const@tie{}char@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
-@deftypefun int ulc_vasprintf (char **@var{resultp}, const char *@var{format}, va_list @var{ap})
+@deftypefun int ulc_vasprintf (char@tie{}**@var{resultp}, const@tie{}char@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
-@deftypefun {char *} ulc_vasnprintf (char *@var{resultbuf}, size_t *@var{lengthp}, const char *@var{format}, va_list @var{ap})
+@deftypefun {char *} ulc_vasnprintf (char@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp}, const@tie{}char@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
The following functions take an ASCII format string and return a result in
UTF-8 format.
-@deftypefun int u8_sprintf (uint8_t *@var{buf}, const char *@var{format}, ...)
+@deftypefun int u8_sprintf (uint8_t@tie{}*@var{buf}, const@tie{}char@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int u8_snprintf (uint8_t *@var{buf}, size_t @var{size}, const char *@var{format}, ...)
+@deftypefun int u8_snprintf (uint8_t@tie{}*@var{buf}, size_t@tie{}@var{size}, const@tie{}char@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int u8_asprintf (uint8_t **@var{resultp}, const char *@var{format}, ...)
+@deftypefun int u8_asprintf (uint8_t@tie{}**@var{resultp}, const@tie{}char@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun {uint8_t *} u8_asnprintf (uint8_t *@var{resultbuf}, size_t *@var{lengthp}, const char *@var{format}, ...)
+@deftypefun {uint8_t *} u8_asnprintf (uint8_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp}, const@tie{}char@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int u8_vsprintf (uint8_t *@var{buf}, const char *@var{format}, va_list ap)
+@deftypefun int u8_vsprintf (uint8_t@tie{}*@var{buf}, const@tie{}char@tie{}*@var{format}, va_list@tie{}ap)
@end deftypefun
-@deftypefun int u8_vsnprintf (uint8_t *@var{buf}, size_t @var{size}, const char *@var{format}, va_list @var{ap})
+@deftypefun int u8_vsnprintf (uint8_t@tie{}*@var{buf}, size_t@tie{}@var{size}, const@tie{}char@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
-@deftypefun int u8_vasprintf (uint8_t **@var{resultp}, const char *@var{format}, va_list @var{ap})
+@deftypefun int u8_vasprintf (uint8_t@tie{}**@var{resultp}, const@tie{}char@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
-@deftypefun {uint8_t *} u8_vasnprintf (uint8_t *resultbuf, size_t *@var{lengthp}, const char *@var{format}, va_list @var{ap})
+@deftypefun {uint8_t *} u8_vasnprintf (uint8_t@tie{}*resultbuf, size_t@tie{}*@var{lengthp}, const@tie{}char@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
The following functions take an UTF-8 format string and return a result in
UTF-8 format.
-@deftypefun int u8_u8_sprintf (uint8_t *@var{buf}, const uint8_t *@var{format}, ...)
+@deftypefun int u8_u8_sprintf (uint8_t@tie{}*@var{buf}, const@tie{}uint8_t@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int u8_u8_snprintf (uint8_t *@var{buf}, size_t @var{size}, const uint8_t *@var{format}, ...)
+@deftypefun int u8_u8_snprintf (uint8_t@tie{}*@var{buf}, size_t@tie{}@var{size}, const@tie{}uint8_t@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int u8_u8_asprintf (uint8_t **@var{resultp}, const uint8_t *@var{format}, ...)
+@deftypefun int u8_u8_asprintf (uint8_t@tie{}**@var{resultp}, const@tie{}uint8_t@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun {uint8_t *} u8_u8_asnprintf (uint8_t *resultbuf, size_t *@var{lengthp}, const uint8_t *@var{format}, ...)
+@deftypefun {uint8_t *} u8_u8_asnprintf (uint8_t@tie{}*resultbuf, size_t@tie{}*@var{lengthp}, const@tie{}uint8_t@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int u8_u8_vsprintf (uint8_t *@var{buf}, const uint8_t *@var{format}, va_list @var{ap})
+@deftypefun int u8_u8_vsprintf (uint8_t@tie{}*@var{buf}, const@tie{}uint8_t@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
-@deftypefun int u8_u8_vsnprintf (uint8_t *@var{buf}, size_t @var{size}, const uint8_t *@var{format}, va_list @var{ap})
+@deftypefun int u8_u8_vsnprintf (uint8_t@tie{}*@var{buf}, size_t@tie{}@var{size}, const@tie{}uint8_t@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
-@deftypefun int u8_u8_vasprintf (uint8_t **@var{resultp}, const uint8_t *@var{format}, va_list @var{ap})
+@deftypefun int u8_u8_vasprintf (uint8_t@tie{}**@var{resultp}, const@tie{}uint8_t@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
-@deftypefun {uint8_t *} u8_u8_vasnprintf (uint8_t *resultbuf, size_t *@var{lengthp}, const uint8_t *@var{format}, va_list @var{ap})
+@deftypefun {uint8_t *} u8_u8_vasnprintf (uint8_t@tie{}*resultbuf, size_t@tie{}*@var{lengthp}, const@tie{}uint8_t@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
The following functions take an ASCII format string and return a result in
UTF-16 format.
-@deftypefun int u16_sprintf (uint16_t *@var{buf}, const char *@var{format}, ...)
+@deftypefun int u16_sprintf (uint16_t@tie{}*@var{buf}, const@tie{}char@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int u16_snprintf (uint16_t *@var{buf}, size_t @var{size}, const char *@var{format}, ...)
+@deftypefun int u16_snprintf (uint16_t@tie{}*@var{buf}, size_t@tie{}@var{size}, const@tie{}char@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int u16_asprintf (uint16_t **@var{resultp}, const char *@var{format}, ...)
+@deftypefun int u16_asprintf (uint16_t@tie{}**@var{resultp}, const@tie{}char@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun {uint16_t *} u16_asnprintf (uint16_t *@var{resultbuf}, size_t *@var{lengthp}, const char *@var{format}, ...)
+@deftypefun {uint16_t *} u16_asnprintf (uint16_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp}, const@tie{}char@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int u16_vsprintf (uint16_t *@var{buf}, const char *@var{format}, va_list ap)
+@deftypefun int u16_vsprintf (uint16_t@tie{}*@var{buf}, const@tie{}char@tie{}*@var{format}, va_list@tie{}ap)
@end deftypefun
-@deftypefun int u16_vsnprintf (uint16_t *@var{buf}, size_t @var{size}, const char *@var{format}, va_list @var{ap})
+@deftypefun int u16_vsnprintf (uint16_t@tie{}*@var{buf}, size_t@tie{}@var{size}, const@tie{}char@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
-@deftypefun int u16_vasprintf (uint16_t **@var{resultp}, const char *@var{format}, va_list @var{ap})
+@deftypefun int u16_vasprintf (uint16_t@tie{}**@var{resultp}, const@tie{}char@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
-@deftypefun {uint16_t *} u16_vasnprintf (uint16_t *resultbuf, size_t *@var{lengthp}, const char *@var{format}, va_list @var{ap})
+@deftypefun {uint16_t *} u16_vasnprintf (uint16_t@tie{}*resultbuf, size_t@tie{}*@var{lengthp}, const@tie{}char@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
The following functions take an UTF-16 format string and return a result in
UTF-16 format.
-@deftypefun int u16_u16_sprintf (uint16_t *@var{buf}, const uint16_t *@var{format}, ...)
+@deftypefun int u16_u16_sprintf (uint16_t@tie{}*@var{buf}, const@tie{}uint16_t@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int u16_u16_snprintf (uint16_t *@var{buf}, size_t @var{size}, const uint16_t *@var{format}, ...)
+@deftypefun int u16_u16_snprintf (uint16_t@tie{}*@var{buf}, size_t@tie{}@var{size}, const@tie{}uint16_t@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int u16_u16_asprintf (uint16_t **@var{resultp}, const uint16_t *@var{format}, ...)
+@deftypefun int u16_u16_asprintf (uint16_t@tie{}**@var{resultp}, const@tie{}uint16_t@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun {uint16_t *} u16_u16_asnprintf (uint16_t *resultbuf, size_t *@var{lengthp}, const uint16_t *@var{format}, ...)
+@deftypefun {uint16_t *} u16_u16_asnprintf (uint16_t@tie{}*resultbuf, size_t@tie{}*@var{lengthp}, const@tie{}uint16_t@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int u16_u16_vsprintf (uint16_t *@var{buf}, const uint16_t *@var{format}, va_list @var{ap})
+@deftypefun int u16_u16_vsprintf (uint16_t@tie{}*@var{buf}, const@tie{}uint16_t@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
-@deftypefun int u16_u16_vsnprintf (uint16_t *@var{buf}, size_t @var{size}, const uint16_t *@var{format}, va_list @var{ap})
+@deftypefun int u16_u16_vsnprintf (uint16_t@tie{}*@var{buf}, size_t@tie{}@var{size}, const@tie{}uint16_t@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
-@deftypefun int u16_u16_vasprintf (uint16_t **@var{resultp}, const uint16_t *@var{format}, va_list @var{ap})
+@deftypefun int u16_u16_vasprintf (uint16_t@tie{}**@var{resultp}, const@tie{}uint16_t@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
-@deftypefun {uint16_t *} u16_u16_vasnprintf (uint16_t *resultbuf, size_t *@var{lengthp}, const uint16_t *@var{format}, va_list @var{ap})
+@deftypefun {uint16_t *} u16_u16_vasnprintf (uint16_t@tie{}*resultbuf, size_t@tie{}*@var{lengthp}, const@tie{}uint16_t@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
The following functions take an ASCII format string and return a result in
UTF-32 format.
-@deftypefun int u32_sprintf (uint32_t *@var{buf}, const char *@var{format}, ...)
+@deftypefun int u32_sprintf (uint32_t@tie{}*@var{buf}, const@tie{}char@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int u32_snprintf (uint32_t *@var{buf}, size_t @var{size}, const char *@var{format}, ...)
+@deftypefun int u32_snprintf (uint32_t@tie{}*@var{buf}, size_t@tie{}@var{size}, const@tie{}char@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int u32_asprintf (uint32_t **@var{resultp}, const char *@var{format}, ...)
+@deftypefun int u32_asprintf (uint32_t@tie{}**@var{resultp}, const@tie{}char@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun {uint32_t *} u32_asnprintf (uint32_t *@var{resultbuf}, size_t *@var{lengthp}, const char *@var{format}, ...)
+@deftypefun {uint32_t *} u32_asnprintf (uint32_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp}, const@tie{}char@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int u32_vsprintf (uint32_t *@var{buf}, const char *@var{format}, va_list ap)
+@deftypefun int u32_vsprintf (uint32_t@tie{}*@var{buf}, const@tie{}char@tie{}*@var{format}, va_list@tie{}ap)
@end deftypefun
-@deftypefun int u32_vsnprintf (uint32_t *@var{buf}, size_t @var{size}, const char *@var{format}, va_list @var{ap})
+@deftypefun int u32_vsnprintf (uint32_t@tie{}*@var{buf}, size_t@tie{}@var{size}, const@tie{}char@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
-@deftypefun int u32_vasprintf (uint32_t **@var{resultp}, const char *@var{format}, va_list @var{ap})
+@deftypefun int u32_vasprintf (uint32_t@tie{}**@var{resultp}, const@tie{}char@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
-@deftypefun {uint32_t *} u32_vasnprintf (uint32_t *resultbuf, size_t *@var{lengthp}, const char *@var{format}, va_list @var{ap})
+@deftypefun {uint32_t *} u32_vasnprintf (uint32_t@tie{}*resultbuf, size_t@tie{}*@var{lengthp}, const@tie{}char@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
The following functions take an UTF-32 format string and return a result in
UTF-32 format.
-@deftypefun int u32_u32_sprintf (uint32_t *@var{buf}, const uint32_t *@var{format}, ...)
+@deftypefun int u32_u32_sprintf (uint32_t@tie{}*@var{buf}, const@tie{}uint32_t@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int u32_u32_snprintf (uint32_t *@var{buf}, size_t @var{size}, const uint32_t *@var{format}, ...)
+@deftypefun int u32_u32_snprintf (uint32_t@tie{}*@var{buf}, size_t@tie{}@var{size}, const@tie{}uint32_t@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int u32_u32_asprintf (uint32_t **@var{resultp}, const uint32_t *@var{format}, ...)
+@deftypefun int u32_u32_asprintf (uint32_t@tie{}**@var{resultp}, const@tie{}uint32_t@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun {uint32_t *} u32_u32_asnprintf (uint32_t *resultbuf, size_t *@var{lengthp}, const uint32_t *@var{format}, ...)
+@deftypefun {uint32_t *} u32_u32_asnprintf (uint32_t@tie{}*resultbuf, size_t@tie{}*@var{lengthp}, const@tie{}uint32_t@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int u32_u32_vsprintf (uint32_t *@var{buf}, const uint32_t *@var{format}, va_list @var{ap})
+@deftypefun int u32_u32_vsprintf (uint32_t@tie{}*@var{buf}, const@tie{}uint32_t@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
-@deftypefun int u32_u32_vsnprintf (uint32_t *@var{buf}, size_t @var{size}, const uint32_t *@var{format}, va_list @var{ap})
+@deftypefun int u32_u32_vsnprintf (uint32_t@tie{}*@var{buf}, size_t@tie{}@var{size}, const@tie{}uint32_t@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
-@deftypefun int u32_u32_vasprintf (uint32_t **@var{resultp}, const uint32_t *@var{format}, va_list @var{ap})
+@deftypefun int u32_u32_vasprintf (uint32_t@tie{}**@var{resultp}, const@tie{}uint32_t@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
-@deftypefun {uint32_t *} u32_u32_vasnprintf (uint32_t *resultbuf, size_t *@var{lengthp}, const uint32_t *@var{format}, va_list @var{ap})
+@deftypefun {uint32_t *} u32_u32_vasnprintf (uint32_t@tie{}*resultbuf, size_t@tie{}*@var{lengthp}, const@tie{}uint32_t@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
The following functions take an ASCII format string and produce output in
locale encoding to a @code{FILE} stream.
-@deftypefun int ulc_fprintf (FILE *@var{stream}, const char *@var{format}, ...)
+@deftypefun int ulc_fprintf (FILE@tie{}*@var{stream}, const@tie{}char@tie{}*@var{format}, ...)
@end deftypefun
-@deftypefun int ulc_vfprintf (FILE *@var{stream}, const char *@var{format}, va_list @var{ap})
+@deftypefun int ulc_vfprintf (FILE@tie{}*@var{stream}, const@tie{}char@tie{}*@var{format}, va_list@tie{}@var{ap})
@end deftypefun
diff --git a/doc/unistr.texi b/doc/unistr.texi
index da0f4da..c59094d 100644
--- a/doc/unistr.texi
+++ b/doc/unistr.texi
@@ -20,9 +20,9 @@ essentially the equivalent of what @code{<string.h>} is for C strings.
@cindex well-formed
The following function is available to verify the integrity of a Unicode string.
-@deftypefun {const uint8_t *} u8_check (const uint8_t *@var{s}, size_t @var{n})
-@deftypefunx {const uint16_t *} u16_check (const uint16_t *@var{s}, size_t @var{n})
-@deftypefunx {const uint32_t *} u32_check (const uint32_t *@var{s}, size_t @var{n})
+@deftypefun {const uint8_t *} u8_check (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n})
+@deftypefunx {const uint16_t *} u16_check (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n})
+@deftypefunx {const uint32_t *} u32_check (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n})
This function checks whether a Unicode string is well-formed.
It returns NULL if valid, or a pointer to the first invalid unit otherwise.
@end deftypefun
@@ -33,42 +33,42 @@ It returns NULL if valid, or a pointer to the first invalid unit otherwise.
@cindex converting
The following functions perform conversions between the different forms of Unicode strings.
-@deftypefun {uint16_t *} u8_to_u16 (const uint8_t *@var{s}, size_t @var{n}, uint16_t *@var{resultbuf}, size_t *@var{lengthp})
+@deftypefun {uint16_t *} u8_to_u16 (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, uint16_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
Converts an UTF-8 string to an UTF-16 string.
The @var{resultbuf} and @var{lengthp} arguments are as described in
chapter @ref{Conventions}.
@end deftypefun
-@deftypefun {uint32_t *} u8_to_u32 (const uint8_t *@var{s}, size_t @var{n}, uint32_t *@var{resultbuf}, size_t *@var{lengthp})
+@deftypefun {uint32_t *} u8_to_u32 (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, uint32_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
Converts an UTF-8 string to an UTF-32 string.
The @var{resultbuf} and @var{lengthp} arguments are as described in
chapter @ref{Conventions}.
@end deftypefun
-@deftypefun {uint8_t *} u16_to_u8 (const uint16_t *@var{s}, size_t @var{n}, uint8_t *@var{resultbuf}, size_t *@var{lengthp})
+@deftypefun {uint8_t *} u16_to_u8 (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, uint8_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
Converts an UTF-16 string to an UTF-8 string.
The @var{resultbuf} and @var{lengthp} arguments are as described in
chapter @ref{Conventions}.
@end deftypefun
-@deftypefun {uint32_t *} u16_to_u32 (const uint16_t *@var{s}, size_t @var{n}, uint32_t *@var{resultbuf}, size_t *@var{lengthp})
+@deftypefun {uint32_t *} u16_to_u32 (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, uint32_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
Converts an UTF-16 string to an UTF-32 string.
The @var{resultbuf} and @var{lengthp} arguments are as described in
chapter @ref{Conventions}.
@end deftypefun
-@deftypefun {uint8_t *} u32_to_u8 (const uint32_t *@var{s}, size_t @var{n}, uint8_t *@var{resultbuf}, size_t *@var{lengthp})
+@deftypefun {uint8_t *} u32_to_u8 (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, uint8_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
Converts an UTF-32 string to an UTF-8 string.
The @var{resultbuf} and @var{lengthp} arguments are as described in
chapter @ref{Conventions}.
@end deftypefun
-@deftypefun {uint16_t *} u32_to_u16 (const uint32_t *@var{s}, size_t @var{n}, uint16_t *@var{resultbuf}, size_t *@var{lengthp})
+@deftypefun {uint16_t *} u32_to_u16 (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, uint16_t@tie{}*@var{resultbuf}, size_t@tie{}*@var{lengthp})
Converts an UTF-32 string to an UTF-16 string.
The @var{resultbuf} and @var{lengthp} arguments are as described in
@@ -94,9 +94,9 @@ chapter @ref{Conventions}.
The following functions inspect and return details about the first character
in a Unicode string.
-@deftypefun int u8_mblen (const uint8_t *@var{s}, size_t @var{n})
-@deftypefunx int u16_mblen (const uint16_t *@var{s}, size_t @var{n})
-@deftypefunx int u32_mblen (const uint32_t *@var{s}, size_t @var{n})
+@deftypefun int u8_mblen (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n})
+@deftypefunx int u16_mblen (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n})
+@deftypefunx int u32_mblen (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n})
Returns the length (number of units) of the first character in @var{s}, which
is no longer than @var{n}. Returns 0 if it is the NUL character. Returns -1
upon failure.
@@ -105,9 +105,9 @@ This function is similar to @posixfunc{mblen}, except that it operates on a
Unicode string and that @var{s} must not be NULL.
@end deftypefun
-@deftypefun int u8_mbtouc (ucs4_t *@var{puc}, const uint8_t *@var{s}, size_t @var{n})
-@deftypefunx int u16_mbtouc (ucs4_t *@var{puc}, const uint16_t *@var{s}, size_t @var{n})
-@deftypefunx int u32_mbtouc (ucs4_t *@var{puc}, const uint32_t *@var{s}, size_t @var{n})
+@deftypefun int u8_mbtouc (ucs4_t@tie{}*@var{puc}, const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n})
+@deftypefunx int u16_mbtouc (ucs4_t@tie{}*@var{puc}, const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n})
+@deftypefunx int u32_mbtouc (ucs4_t@tie{}*@var{puc}, const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n})
Returns the length (number of units) of the first character in @var{s},
putting its @code{ucs4_t} representation in @code{*@var{puc}}. Upon failure,
@code{*@var{puc}} is set to @code{0xfffd}, and an appropriate number of units
@@ -124,17 +124,17 @@ Unicode string, @var{puc} and @var{s} must not be NULL, @var{n} must be > 0,
and the NUL character is not treated specially.
@end deftypefun
-@deftypefun int u8_mbtouc_unsafe (ucs4_t *@var{puc}, const uint8_t *@var{s}, size_t @var{n})
-@deftypefunx int u16_mbtouc_unsafe (ucs4_t *@var{puc}, const uint16_t *@var{s}, size_t @var{n})
-@deftypefunx int u32_mbtouc_unsafe (ucs4_t *@var{puc}, const uint32_t *@var{s}, size_t @var{n})
+@deftypefun int u8_mbtouc_unsafe (ucs4_t@tie{}*@var{puc}, const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n})
+@deftypefunx int u16_mbtouc_unsafe (ucs4_t@tie{}*@var{puc}, const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n})
+@deftypefunx int u32_mbtouc_unsafe (ucs4_t@tie{}*@var{puc}, const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n})
This function is identical to @code{u8_mbtouc}/@code{u16_mbtouc}/@code{u32_mbtouc}.
Earlier versions of this function performed fewer range-checks on the sequence
of units.
@end deftypefun
-@deftypefun int u8_mbtoucr (ucs4_t *@var{puc}, const uint8_t *@var{s}, size_t @var{n})
-@deftypefunx int u16_mbtoucr (ucs4_t *@var{puc}, const uint16_t *@var{s}, size_t @var{n})
-@deftypefunx int u32_mbtoucr (ucs4_t *@var{puc}, const uint32_t *@var{s}, size_t @var{n})
+@deftypefun int u8_mbtoucr (ucs4_t@tie{}*@var{puc}, const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n})
+@deftypefunx int u16_mbtoucr (ucs4_t@tie{}*@var{puc}, const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n})
+@deftypefunx int u32_mbtoucr (ucs4_t@tie{}*@var{puc}, const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n})
Returns the length (number of units) of the first character in @var{s},
putting its @code{ucs4_t} representation in @code{*@var{puc}}. Upon failure,
@code{*@var{puc}} is set to @code{0xfffd}, and -1 is returned for an invalid
@@ -152,9 +152,9 @@ gives more details about the failure, similar to @posixfunc{mbrtowc}.
The following function stores a Unicode character as a Unicode string in
memory.
-@deftypefun int u8_uctomb (uint8_t *@var{s}, ucs4_t @var{uc}, int @var{n})
-@deftypefunx int u16_uctomb (uint16_t *@var{s}, ucs4_t @var{uc}, int @var{n})
-@deftypefunx int u32_uctomb (uint32_t *@var{s}, ucs4_t @var{uc}, int @var{n})
+@deftypefun int u8_uctomb (uint8_t@tie{}*@var{s}, ucs4_t@tie{}@var{uc}, int@tie{}@var{n})
+@deftypefunx int u16_uctomb (uint16_t@tie{}*@var{s}, ucs4_t@tie{}@var{uc}, int@tie{}@var{n})
+@deftypefunx int u32_uctomb (uint32_t@tie{}*@var{s}, ucs4_t@tie{}@var{uc}, int@tie{}@var{n})
Puts the multibyte character represented by @var{uc} in @var{s}, returning its
length. Returns -1 upon failure, -2 if the number of available units, @var{n},
is too small. The latter case cannot occur if @var{n} >= 6/2/1, respectively.
@@ -170,18 +170,18 @@ specified.
@cindex copying
The following functions copy Unicode strings in memory.
-@deftypefun {uint8_t *} u8_cpy (uint8_t *@var{dest}, const uint8_t *@var{src}, size_t @var{n})
-@deftypefunx {uint16_t *} u16_cpy (uint16_t *@var{dest}, const uint16_t *@var{src}, size_t @var{n})
-@deftypefunx {uint32_t *} u32_cpy (uint32_t *@var{dest}, const uint32_t *@var{src}, size_t @var{n})
+@deftypefun {uint8_t *} u8_cpy (uint8_t@tie{}*@var{dest}, const@tie{}uint8_t@tie{}*@var{src}, size_t@tie{}@var{n})
+@deftypefunx {uint16_t *} u16_cpy (uint16_t@tie{}*@var{dest}, const@tie{}uint16_t@tie{}*@var{src}, size_t@tie{}@var{n})
+@deftypefunx {uint32_t *} u32_cpy (uint32_t@tie{}*@var{dest}, const@tie{}uint32_t@tie{}*@var{src}, size_t@tie{}@var{n})
Copies @var{n} units from @var{src} to @var{dest}.
This function is similar to @posixfunc{memcpy}, except that it operates on
Unicode strings.
@end deftypefun
-@deftypefun {uint8_t *} u8_move (uint8_t *@var{dest}, const uint8_t *@var{src}, size_t @var{n})
-@deftypefunx {uint16_t *} u16_move (uint16_t *@var{dest}, const uint16_t *@var{src}, size_t @var{n})
-@deftypefunx {uint32_t *} u32_move (uint32_t *@var{dest}, const uint32_t *@var{src}, size_t @var{n})
+@deftypefun {uint8_t *} u8_move (uint8_t@tie{}*@var{dest}, const@tie{}uint8_t@tie{}*@var{src}, size_t@tie{}@var{n})
+@deftypefunx {uint16_t *} u16_move (uint16_t@tie{}*@var{dest}, const@tie{}uint16_t@tie{}*@var{src}, size_t@tie{}@var{n})
+@deftypefunx {uint32_t *} u32_move (uint32_t@tie{}*@var{dest}, const@tie{}uint32_t@tie{}*@var{src}, size_t@tie{}@var{n})
Copies @var{n} units from @var{src} to @var{dest}, guaranteeing correct
behavior for overlapping memory areas.
@@ -191,9 +191,9 @@ Unicode strings.
The following function fills a Unicode string.
-@deftypefun {uint8_t *} u8_set (uint8_t *@var{s}, ucs4_t @var{uc}, size_t @var{n})
-@deftypefunx {uint16_t *} u16_set (uint16_t *@var{s}, ucs4_t @var{uc}, size_t @var{n})
-@deftypefunx {uint32_t *} u32_set (uint32_t *@var{s}, ucs4_t @var{uc}, size_t @var{n})
+@deftypefun {uint8_t *} u8_set (uint8_t@tie{}*@var{s}, ucs4_t@tie{}@var{uc}, size_t@tie{}@var{n})
+@deftypefunx {uint16_t *} u16_set (uint16_t@tie{}*@var{s}, ucs4_t@tie{}@var{uc}, size_t@tie{}@var{n})
+@deftypefunx {uint32_t *} u32_set (uint32_t@tie{}*@var{s}, ucs4_t@tie{}@var{uc}, size_t@tie{}@var{n})
Sets the first @var{n} characters of @var{s} to @var{uc}. @var{uc} should be
a character that occupies only 1 unit.
@@ -207,9 +207,9 @@ Unicode strings.
@cindex comparing
The following function compares two Unicode strings of the same length.
-@deftypefun int u8_cmp (const uint8_t *@var{s1}, const uint8_t *@var{s2}, size_t @var{n})
-@deftypefunx int u16_cmp (const uint16_t *@var{s1}, const uint16_t *@var{s2}, size_t @var{n})
-@deftypefunx int u32_cmp (const uint32_t *@var{s1}, const uint32_t *@var{s2}, size_t @var{n})
+@deftypefun int u8_cmp (const@tie{}uint8_t@tie{}*@var{s1}, const@tie{}uint8_t@tie{}*@var{s2}, size_t@tie{}@var{n})
+@deftypefunx int u16_cmp (const@tie{}uint16_t@tie{}*@var{s1}, const@tie{}uint16_t@tie{}*@var{s2}, size_t@tie{}@var{n})
+@deftypefunx int u32_cmp (const@tie{}uint32_t@tie{}*@var{s1}, const@tie{}uint32_t@tie{}*@var{s2}, size_t@tie{}@var{n})
Compares @var{s1} and @var{s2}, each of length @var{n}, lexicographically.
Returns a negative value if @var{s1} compares smaller than @var{s2},
a positive value if @var{s1} compares larger than @var{s2}, or 0 if
@@ -222,9 +222,9 @@ Unicode strings.
The following function compares two Unicode strings of possibly different
lengths.
-@deftypefun int u8_cmp2 (const uint8_t *@var{s1}, size_t @var{n1}, const uint8_t *@var{s2}, size_t @var{n2})
-@deftypefunx int u16_cmp2 (const uint16_t *@var{s1}, size_t @var{n1}, const uint16_t *@var{s2}, size_t @var{n2})
-@deftypefunx int u32_cmp2 (const uint32_t *@var{s1}, size_t @var{n1}, const uint32_t *@var{s2}, size_t @var{n2})
+@deftypefun int u8_cmp2 (const@tie{}uint8_t@tie{}*@var{s1}, size_t@tie{}@var{n1}, const@tie{}uint8_t@tie{}*@var{s2}, size_t@tie{}@var{n2})
+@deftypefunx int u16_cmp2 (const@tie{}uint16_t@tie{}*@var{s1}, size_t@tie{}@var{n1}, const@tie{}uint16_t@tie{}*@var{s2}, size_t@tie{}@var{n2})
+@deftypefunx int u32_cmp2 (const@tie{}uint32_t@tie{}*@var{s1}, size_t@tie{}@var{n1}, const@tie{}uint32_t@tie{}*@var{s2}, size_t@tie{}@var{n2})
Compares @var{s1} and @var{s2}, lexicographically.
Returns a negative value if @var{s1} compares smaller than @var{s2},
a positive value if @var{s1} compares larger than @var{s2}, or 0 if
@@ -240,9 +240,9 @@ operates on Unicode strings.
@cindex searching, for a character
The following function searches for a given Unicode character.
-@deftypefun {uint8_t *} u8_chr (const uint8_t *@var{s}, size_t @var{n}, ucs4_t @var{uc})
-@deftypefunx {uint16_t *} u16_chr (const uint16_t *@var{s}, size_t @var{n}, ucs4_t @var{uc})
-@deftypefunx {uint32_t *} u32_chr (const uint32_t *@var{s}, size_t @var{n}, ucs4_t @var{uc})
+@deftypefun {uint8_t *} u8_chr (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, ucs4_t@tie{}@var{uc})
+@deftypefunx {uint16_t *} u16_chr (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, ucs4_t@tie{}@var{uc})
+@deftypefunx {uint32_t *} u32_chr (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, ucs4_t@tie{}@var{uc})
Searches the string at @var{s} for @var{uc}. Returns a pointer to the first
occurrence of @var{uc} in @var{s}, or NULL if @var{uc} does not occur in
@var{s}.
@@ -257,9 +257,9 @@ Unicode strings.
@cindex counting
The following function counts the number of Unicode characters.
-@deftypefun size_t u8_mbsnlen (const uint8_t *@var{s}, size_t @var{n})
-@deftypefunx size_t u16_mbsnlen (const uint16_t *@var{s}, size_t @var{n})
-@deftypefunx size_t u32_mbsnlen (const uint32_t *@var{s}, size_t @var{n})
+@deftypefun size_t u8_mbsnlen (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n})
+@deftypefunx size_t u16_mbsnlen (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n})
+@deftypefunx size_t u32_mbsnlen (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n})
Counts and returns the number of Unicode characters in the @var{n} units
from @var{s}.
@@ -273,9 +273,9 @@ it operates on Unicode strings.
@cindex duplicating
The following function copies a Unicode string.
-@deftypefun {uint8_t *} u8_cpy_alloc (const uint8_t *@var{s}, size_t @var{n})
-@deftypefunx {uint16_t *} u16_cpy_alloc (const uint16_t *@var{s}, size_t @var{n})
-@deftypefunx {uint32_t *} u32_cpy_alloc (const uint32_t *@var{s}, size_t @var{n})
+@deftypefun {uint8_t *} u8_cpy_alloc (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n})
+@deftypefunx {uint16_t *} u16_cpy_alloc (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n})
+@deftypefunx {uint32_t *} u32_cpy_alloc (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n})
Makes a freshly allocated copy of @var{s}, of length @var{n}.
@end deftypefun
@@ -299,25 +299,25 @@ Makes a freshly allocated copy of @var{s}, of length @var{n}.
The following functions inspect and return details about the first character
in a Unicode string.
-@deftypefun int u8_strmblen (const uint8_t *@var{s})
-@deftypefunx int u16_strmblen (const uint16_t *@var{s})
-@deftypefunx int u32_strmblen (const uint32_t *@var{s})
+@deftypefun int u8_strmblen (const@tie{}uint8_t@tie{}*@var{s})
+@deftypefunx int u16_strmblen (const@tie{}uint16_t@tie{}*@var{s})
+@deftypefunx int u32_strmblen (const@tie{}uint32_t@tie{}*@var{s})
Returns the length (number of units) of the first character in @var{s}.
Returns 0 if it is the NUL character. Returns -1 upon failure.
@end deftypefun
@cindex iterating
-@deftypefun int u8_strmbtouc (ucs4_t *@var{puc}, const uint8_t *@var{s})
-@deftypefunx int u16_strmbtouc (ucs4_t *@var{puc}, const uint16_t *@var{s})
-@deftypefunx int u32_strmbtouc (ucs4_t *@var{puc}, const uint32_t *@var{s})
+@deftypefun int u8_strmbtouc (ucs4_t@tie{}*@var{puc}, const@tie{}uint8_t@tie{}*@var{s})
+@deftypefunx int u16_strmbtouc (ucs4_t@tie{}*@var{puc}, const@tie{}uint16_t@tie{}*@var{s})
+@deftypefunx int u32_strmbtouc (ucs4_t@tie{}*@var{puc}, const@tie{}uint32_t@tie{}*@var{s})
Returns the length (number of units) of the first character in @var{s},
putting its @code{ucs4_t} representation in @code{*@var{puc}}. Returns 0
if it is the NUL character. Returns -1 upon failure.
@end deftypefun
-@deftypefun {const uint8_t *} u8_next (ucs4_t *@var{puc}, const uint8_t *@var{s})
-@deftypefunx {const uint16_t *} u16_next (ucs4_t *@var{puc}, const uint16_t *@var{s})
-@deftypefunx {const uint32_t *} u32_next (ucs4_t *@var{puc}, const uint32_t *@var{s})
+@deftypefun {const uint8_t *} u8_next (ucs4_t@tie{}*@var{puc}, const@tie{}uint8_t@tie{}*@var{s})
+@deftypefunx {const uint16_t *} u16_next (ucs4_t@tie{}*@var{puc}, const@tie{}uint16_t@tie{}*@var{s})
+@deftypefunx {const uint32_t *} u32_next (ucs4_t@tie{}*@var{puc}, const@tie{}uint32_t@tie{}*@var{s})
Forward iteration step. Advances the pointer past the next character,
or returns NULL if the end of the string has been reached. Puts the
character's @code{ucs4_t} representation in @code{*@var{puc}}.
@@ -326,9 +326,9 @@ character's @code{ucs4_t} representation in @code{*@var{puc}}.
The following function inspects and returns details about the previous
character in a Unicode string.
-@deftypefun {const uint8_t *} u8_prev (ucs4_t *@var{puc}, const uint8_t *@var{s}, const uint8_t *@var{start})
-@deftypefunx {const uint16_t *} u16_prev (ucs4_t *@var{puc}, const uint16_t *@var{s}, const uint16_t *@var{start})
-@deftypefunx {const uint32_t *} u32_prev (ucs4_t *@var{puc}, const uint32_t *@var{s}, const uint32_t *@var{start})
+@deftypefun {const uint8_t *} u8_prev (ucs4_t@tie{}*@var{puc}, const@tie{}uint8_t@tie{}*@var{s}, const@tie{}uint8_t@tie{}*@var{start})
+@deftypefunx {const uint16_t *} u16_prev (ucs4_t@tie{}*@var{puc}, const@tie{}uint16_t@tie{}*@var{s}, const@tie{}uint16_t@tie{}*@var{start})
+@deftypefunx {const uint32_t *} u32_prev (ucs4_t@tie{}*@var{puc}, const@tie{}uint32_t@tie{}*@var{s}, const@tie{}uint32_t@tie{}*@var{start})
Backward iteration step. Advances the pointer to point to the previous
character (the one that ends at @code{@var{s}}), or returns NULL if the
beginning of the string (specified by @code{@var{start}}) had been reached.
@@ -341,18 +341,18 @@ Note that this function works only on well-formed Unicode strings.
The following functions determine the length of a Unicode string.
-@deftypefun size_t u8_strlen (const uint8_t *@var{s})
-@deftypefunx size_t u16_strlen (const uint16_t *@var{s})
-@deftypefunx size_t u32_strlen (const uint32_t *@var{s})
+@deftypefun size_t u8_strlen (const@tie{}uint8_t@tie{}*@var{s})
+@deftypefunx size_t u16_strlen (const@tie{}uint16_t@tie{}*@var{s})
+@deftypefunx size_t u32_strlen (const@tie{}uint32_t@tie{}*@var{s})
Returns the number of units in @var{s}.
This function is similar to @posixfunc{strlen} and @posixfunc{wcslen}, except
that it operates on Unicode strings.
@end deftypefun
-@deftypefun size_t u8_strnlen (const uint8_t *@var{s}, size_t @var{maxlen})
-@deftypefunx size_t u16_strnlen (const uint16_t *@var{s}, size_t @var{maxlen})
-@deftypefunx size_t u32_strnlen (const uint32_t *@var{s}, size_t @var{maxlen})
+@deftypefun size_t u8_strnlen (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{maxlen})
+@deftypefunx size_t u16_strnlen (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{maxlen})
+@deftypefunx size_t u32_strnlen (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{maxlen})
Returns the number of units in @var{s}, but at most @var{maxlen}.
This function is similar to @posixfunc{strnlen} and @posixfunc{wcsnlen}, except
@@ -365,18 +365,18 @@ that it operates on Unicode strings.
@cindex copying
The following functions copy portions of Unicode strings in memory.
-@deftypefun {uint8_t *} u8_strcpy (uint8_t *@var{dest}, const uint8_t *@var{src})
-@deftypefunx {uint16_t *} u16_strcpy (uint16_t *@var{dest}, const uint16_t *@var{src})
-@deftypefunx {uint32_t *} u32_strcpy (uint32_t *@var{dest}, const uint32_t *@var{src})
+@deftypefun {uint8_t *} u8_strcpy (uint8_t@tie{}*@var{dest}, const@tie{}uint8_t@tie{}*@var{src})
+@deftypefunx {uint16_t *} u16_strcpy (uint16_t@tie{}*@var{dest}, const@tie{}uint16_t@tie{}*@var{src})
+@deftypefunx {uint32_t *} u32_strcpy (uint32_t@tie{}*@var{dest}, const@tie{}uint32_t@tie{}*@var{src})
Copies @var{src} to @var{dest}.
This function is similar to @posixfunc{strcpy} and @posixfunc{wcscpy}, except
that it operates on Unicode strings.
@end deftypefun
-@deftypefun {uint8_t *} u8_stpcpy (uint8_t *@var{dest}, const uint8_t *@var{src})
-@deftypefunx {uint16_t *} u16_stpcpy (uint16_t *@var{dest}, const uint16_t *@var{src})
-@deftypefunx {uint32_t *} u32_stpcpy (uint32_t *@var{dest}, const uint32_t *@var{src})
+@deftypefun {uint8_t *} u8_stpcpy (uint8_t@tie{}*@var{dest}, const@tie{}uint8_t@tie{}*@var{src})
+@deftypefunx {uint16_t *} u16_stpcpy (uint16_t@tie{}*@var{dest}, const@tie{}uint16_t@tie{}*@var{src})
+@deftypefunx {uint32_t *} u32_stpcpy (uint32_t@tie{}*@var{dest}, const@tie{}uint32_t@tie{}*@var{src})
Copies @var{src} to @var{dest}, returning the address of the terminating NUL
in @var{dest}.
@@ -384,18 +384,18 @@ This function is similar to @posixfunc{stpcpy}, except that it operates on
Unicode strings.
@end deftypefun
-@deftypefun {uint8_t *} u8_strncpy (uint8_t *@var{dest}, const uint8_t *@var{src}, size_t @var{n})
-@deftypefunx {uint16_t *} u16_strncpy (uint16_t *@var{dest}, const uint16_t *@var{src}, size_t @var{n})
-@deftypefunx {uint32_t *} u32_strncpy (uint32_t *@var{dest}, const uint32_t *@var{src}, size_t @var{n})
+@deftypefun {uint8_t *} u8_strncpy (uint8_t@tie{}*@var{dest}, const@tie{}uint8_t@tie{}*@var{src}, size_t@tie{}@var{n})
+@deftypefunx {uint16_t *} u16_strncpy (uint16_t@tie{}*@var{dest}, const@tie{}uint16_t@tie{}*@var{src}, size_t@tie{}@var{n})
+@deftypefunx {uint32_t *} u32_strncpy (uint32_t@tie{}*@var{dest}, const@tie{}uint32_t@tie{}*@var{src}, size_t@tie{}@var{n})
Copies no more than @var{n} units of @var{src} to @var{dest}.
This function is similar to @posixfunc{strncpy} and @posixfunc{wcsncpy}, except
that it operates on Unicode strings.
@end deftypefun
-@deftypefun {uint8_t *} u8_stpncpy (uint8_t *@var{dest}, const uint8_t *@var{src}, size_t @var{n})
-@deftypefunx {uint16_t *} u16_stpncpy (uint16_t *@var{dest}, const uint16_t *@var{src}, size_t @var{n})
-@deftypefunx {uint32_t *} u32_stpncpy (uint32_t *@var{dest}, const uint32_t *@var{src}, size_t @var{n})
+@deftypefun {uint8_t *} u8_stpncpy (uint8_t@tie{}*@var{dest}, const@tie{}uint8_t@tie{}*@var{src}, size_t@tie{}@var{n})
+@deftypefunx {uint16_t *} u16_stpncpy (uint16_t@tie{}*@var{dest}, const@tie{}uint16_t@tie{}*@var{src}, size_t@tie{}@var{n})
+@deftypefunx {uint32_t *} u32_stpncpy (uint32_t@tie{}*@var{dest}, const@tie{}uint32_t@tie{}*@var{src}, size_t@tie{}@var{n})
Copies no more than @var{n} units of @var{src} to @var{dest}. Returns a
pointer past the last non-NUL unit written into @var{dest}. In other words,
if the units written into @var{dest} include a NUL, the return value is the
@@ -406,18 +406,18 @@ This function is similar to @posixfunc{stpncpy}, except that it operates on
Unicode strings.
@end deftypefun
-@deftypefun {uint8_t *} u8_strcat (uint8_t *@var{dest}, const uint8_t *@var{src})
-@deftypefunx {uint16_t *} u16_strcat (uint16_t *@var{dest}, const uint16_t *@var{src})
-@deftypefunx {uint32_t *} u32_strcat (uint32_t *@var{dest}, const uint32_t *@var{src})
+@deftypefun {uint8_t *} u8_strcat (uint8_t@tie{}*@var{dest}, const@tie{}uint8_t@tie{}*@var{src})
+@deftypefunx {uint16_t *} u16_strcat (uint16_t@tie{}*@var{dest}, const@tie{}uint16_t@tie{}*@var{src})
+@deftypefunx {uint32_t *} u32_strcat (uint32_t@tie{}*@var{dest}, const@tie{}uint32_t@tie{}*@var{src})
Appends @var{src} onto @var{dest}.
This function is similar to @posixfunc{strcat} and @posixfunc{wcscat}, except
that it operates on Unicode strings.
@end deftypefun
-@deftypefun {uint8_t *} u8_strncat (uint8_t *@var{dest}, const uint8_t *@var{src}, size_t @var{n})
-@deftypefunx {uint16_t *} u16_strncat (uint16_t *@var{dest}, const uint16_t *@var{src}, size_t @var{n})
-@deftypefunx {uint32_t *} u32_strncat (uint32_t *@var{dest}, const uint32_t *@var{src}, size_t @var{n})
+@deftypefun {uint8_t *} u8_strncat (uint8_t@tie{}*@var{dest}, const@tie{}uint8_t@tie{}*@var{src}, size_t@tie{}@var{n})
+@deftypefunx {uint16_t *} u16_strncat (uint16_t@tie{}*@var{dest}, const@tie{}uint16_t@tie{}*@var{src}, size_t@tie{}@var{n})
+@deftypefunx {uint32_t *} u32_strncat (uint32_t@tie{}*@var{dest}, const@tie{}uint32_t@tie{}*@var{src}, size_t@tie{}@var{n})
Appends no more than @var{n} units of @var{src} onto @var{dest}.
This function is similar to @posixfunc{strncat} and @posixfunc{wcsncat}, except
@@ -430,9 +430,9 @@ that it operates on Unicode strings.
@cindex comparing
The following functions compare two Unicode strings.
-@deftypefun int u8_strcmp (const uint8_t *@var{s1}, const uint8_t *@var{s2})
-@deftypefunx int u16_strcmp (const uint16_t *@var{s1}, const uint16_t *@var{s2})
-@deftypefunx int u32_strcmp (const uint32_t *@var{s1}, const uint32_t *@var{s2})
+@deftypefun int u8_strcmp (const@tie{}uint8_t@tie{}*@var{s1}, const@tie{}uint8_t@tie{}*@var{s2})
+@deftypefunx int u16_strcmp (const@tie{}uint16_t@tie{}*@var{s1}, const@tie{}uint16_t@tie{}*@var{s2})
+@deftypefunx int u32_strcmp (const@tie{}uint32_t@tie{}*@var{s1}, const@tie{}uint32_t@tie{}*@var{s2})
Compares @var{s1} and @var{s2}, lexicographically.
Returns a negative value if @var{s1} compares smaller than @var{s2},
a positive value if @var{s1} compares larger than @var{s2}, or 0 if
@@ -443,9 +443,9 @@ that it operates on Unicode strings.
@end deftypefun
@cindex comparing, with collation rules
-@deftypefun int u8_strcoll (const uint8_t *@var{s1}, const uint8_t *@var{s2})
-@deftypefunx int u16_strcoll (const uint16_t *@var{s1}, const uint16_t *@var{s2})
-@deftypefunx int u32_strcoll (const uint32_t *@var{s1}, const uint32_t *@var{s2})
+@deftypefun int u8_strcoll (const@tie{}uint8_t@tie{}*@var{s1}, const@tie{}uint8_t@tie{}*@var{s2})
+@deftypefunx int u16_strcoll (const@tie{}uint16_t@tie{}*@var{s1}, const@tie{}uint16_t@tie{}*@var{s2})
+@deftypefunx int u32_strcoll (const@tie{}uint32_t@tie{}*@var{s1}, const@tie{}uint32_t@tie{}*@var{s2})
Compares @var{s1} and @var{s2} using the collation rules of the current
locale.
Returns -1 if @var{s1} < @var{s2}, 0 if @var{s1} = @var{s2}, 1 if
@@ -459,9 +459,9 @@ of the same string as having a large distance. It is therefore better to
use the function @code{u8_normcoll} instead of this one; see @ref{uninorm.h}.
@end deftypefun
-@deftypefun int u8_strncmp (const uint8_t *@var{s1}, const uint8_t *@var{s2}, size_t @var{n})
-@deftypefunx int u16_strncmp (const uint16_t *@var{s1}, const uint16_t *@var{s2}, size_t @var{n})
-@deftypefunx int u32_strncmp (const uint32_t *@var{s1}, const uint32_t *@var{s2}, size_t @var{n})
+@deftypefun int u8_strncmp (const@tie{}uint8_t@tie{}*@var{s1}, const@tie{}uint8_t@tie{}*@var{s2}, size_t@tie{}@var{n})
+@deftypefunx int u16_strncmp (const@tie{}uint16_t@tie{}*@var{s1}, const@tie{}uint16_t@tie{}*@var{s2}, size_t@tie{}@var{n})
+@deftypefunx int u32_strncmp (const@tie{}uint32_t@tie{}*@var{s1}, const@tie{}uint32_t@tie{}*@var{s2}, size_t@tie{}@var{n})
Compares no more than @var{n} units of @var{s1} and @var{s2}.
This function is similar to @posixfunc{strncmp} and @posixfunc{wcsncmp}, except
@@ -474,9 +474,9 @@ that it operates on Unicode strings.
@cindex duplicating
The following function allocates a duplicate of a Unicode string.
-@deftypefun {uint8_t *} u8_strdup (const uint8_t *@var{s})
-@deftypefunx {uint16_t *} u16_strdup (const uint16_t *@var{s})
-@deftypefunx {uint32_t *} u32_strdup (const uint32_t *@var{s})
+@deftypefun {uint8_t *} u8_strdup (const@tie{}uint8_t@tie{}*@var{s})
+@deftypefunx {uint16_t *} u16_strdup (const@tie{}uint16_t@tie{}*@var{s})
+@deftypefunx {uint32_t *} u32_strdup (const@tie{}uint32_t@tie{}*@var{s})
Duplicates @var{s}, returning an identical malloc'd string.
This function is similar to @posixfunc{strdup} and @posixfunc{wcsdup}, except
@@ -489,18 +489,18 @@ that it operates on Unicode strings.
@cindex searching, for a character
The following functions search for a given Unicode character.
-@deftypefun {uint8_t *} u8_strchr (const uint8_t *@var{str}, ucs4_t @var{uc})
-@deftypefunx {uint16_t *} u16_strchr (const uint16_t *@var{str}, ucs4_t @var{uc})
-@deftypefunx {uint32_t *} u32_strchr (const uint32_t *@var{str}, ucs4_t @var{uc})
+@deftypefun {uint8_t *} u8_strchr (const@tie{}uint8_t@tie{}*@var{str}, ucs4_t@tie{}@var{uc})
+@deftypefunx {uint16_t *} u16_strchr (const@tie{}uint16_t@tie{}*@var{str}, ucs4_t@tie{}@var{uc})
+@deftypefunx {uint32_t *} u32_strchr (const@tie{}uint32_t@tie{}*@var{str}, ucs4_t@tie{}@var{uc})
Finds the first occurrence of @var{uc} in @var{str}.
This function is similar to @posixfunc{strchr} and @posixfunc{wcschr}, except
that it operates on Unicode strings.
@end deftypefun
-@deftypefun {uint8_t *} u8_strrchr (const uint8_t *@var{str}, ucs4_t @var{uc})
-@deftypefunx {uint16_t *} u16_strrchr (const uint16_t *@var{str}, ucs4_t @var{uc})
-@deftypefunx {uint32_t *} u32_strrchr (const uint32_t *@var{str}, ucs4_t @var{uc})
+@deftypefun {uint8_t *} u8_strrchr (const@tie{}uint8_t@tie{}*@var{str}, ucs4_t@tie{}@var{uc})
+@deftypefunx {uint16_t *} u16_strrchr (const@tie{}uint16_t@tie{}*@var{str}, ucs4_t@tie{}@var{uc})
+@deftypefunx {uint32_t *} u32_strrchr (const@tie{}uint32_t@tie{}*@var{str}, ucs4_t@tie{}@var{uc})
Finds the last occurrence of @var{uc} in @var{str}.
This function is similar to @posixfunc{strrchr} and @posixfunc{wcsrchr}, except
@@ -510,9 +510,9 @@ that it operates on Unicode strings.
The following functions search for the first occurrence of some Unicode
character in or outside a given set of Unicode characters.
-@deftypefun size_t u8_strcspn (const uint8_t *@var{str}, const uint8_t *@var{reject})
-@deftypefunx size_t u16_strcspn (const uint16_t *@var{str}, const uint16_t *@var{reject})
-@deftypefunx size_t u32_strcspn (const uint32_t *@var{str}, const uint32_t *@var{reject})
+@deftypefun size_t u8_strcspn (const@tie{}uint8_t@tie{}*@var{str}, const@tie{}uint8_t@tie{}*@var{reject})
+@deftypefunx size_t u16_strcspn (const@tie{}uint16_t@tie{}*@var{str}, const@tie{}uint16_t@tie{}*@var{reject})
+@deftypefunx size_t u32_strcspn (const@tie{}uint32_t@tie{}*@var{str}, const@tie{}uint32_t@tie{}*@var{reject})
Returns the length of the initial segment of @var{str} which consists entirely
of Unicode characters not in @var{reject}.
@@ -520,9 +520,9 @@ This function is similar to @posixfunc{strcspn} and @posixfunc{wcscspn}, except
that it operates on Unicode strings.
@end deftypefun
-@deftypefun size_t u8_strspn (const uint8_t *@var{str}, const uint8_t *@var{accept})
-@deftypefunx size_t u16_strspn (const uint16_t *@var{str}, const uint16_t *@var{accept})
-@deftypefunx size_t u32_strspn (const uint32_t *@var{str}, const uint32_t *@var{accept})
+@deftypefun size_t u8_strspn (const@tie{}uint8_t@tie{}*@var{str}, const@tie{}uint8_t@tie{}*@var{accept})
+@deftypefunx size_t u16_strspn (const@tie{}uint16_t@tie{}*@var{str}, const@tie{}uint16_t@tie{}*@var{accept})
+@deftypefunx size_t u32_strspn (const@tie{}uint32_t@tie{}*@var{str}, const@tie{}uint32_t@tie{}*@var{accept})
Returns the length of the initial segment of @var{str} which consists entirely
of Unicode characters in @var{accept}.
@@ -530,9 +530,9 @@ This function is similar to @posixfunc{strspn} and @posixfunc{wcsspn}, except
that it operates on Unicode strings.
@end deftypefun
-@deftypefun {uint8_t *} u8_strpbrk (const uint8_t *@var{str}, const uint8_t *@var{accept})
-@deftypefunx {uint16_t *} u16_strpbrk (const uint16_t *@var{str}, const uint16_t *@var{accept})
-@deftypefunx {uint32_t *} u32_strpbrk (const uint32_t *@var{str}, const uint32_t *@var{accept})
+@deftypefun {uint8_t *} u8_strpbrk (const@tie{}uint8_t@tie{}*@var{str}, const@tie{}uint8_t@tie{}*@var{accept})
+@deftypefunx {uint16_t *} u16_strpbrk (const@tie{}uint16_t@tie{}*@var{str}, const@tie{}uint16_t@tie{}*@var{accept})
+@deftypefunx {uint32_t *} u32_strpbrk (const@tie{}uint32_t@tie{}*@var{str}, const@tie{}uint32_t@tie{}*@var{accept})
Finds the first occurrence in @var{str} of any character in @var{accept}.
This function is similar to @posixfunc{strpbrk} and @posixfunc{wcspbrk}, except
@@ -546,24 +546,24 @@ that it operates on Unicode strings.
The following functions search whether a given Unicode string is a substring
of another Unicode string.
-@deftypefun {uint8_t *} u8_strstr (const uint8_t *@var{haystack}, const uint8_t *@var{needle})
-@deftypefunx {uint16_t *} u16_strstr (const uint16_t *@var{haystack}, const uint16_t *@var{needle})
-@deftypefunx {uint32_t *} u32_strstr (const uint32_t *@var{haystack}, const uint32_t *@var{needle})
+@deftypefun {uint8_t *} u8_strstr (const@tie{}uint8_t@tie{}*@var{haystack}, const@tie{}uint8_t@tie{}*@var{needle})
+@deftypefunx {uint16_t *} u16_strstr (const@tie{}uint16_t@tie{}*@var{haystack}, const@tie{}uint16_t@tie{}*@var{needle})
+@deftypefunx {uint32_t *} u32_strstr (const@tie{}uint32_t@tie{}*@var{haystack}, const@tie{}uint32_t@tie{}*@var{needle})
Finds the first occurrence of @var{needle} in @var{haystack}.
This function is similar to @posixfunc{strstr} and @posixfunc{wcsstr}, except
that it operates on Unicode strings.
@end deftypefun
-@deftypefun bool u8_startswith (const uint8_t *@var{str}, const uint8_t *@var{prefix})
-@deftypefunx bool u16_startswith (const uint16_t *@var{str}, const uint16_t *@var{prefix})
-@deftypefunx bool u32_startswith (const uint32_t *@var{str}, const uint32_t *@var{prefix})
+@deftypefun bool u8_startswith (const@tie{}uint8_t@tie{}*@var{str}, const@tie{}uint8_t@tie{}*@var{prefix})
+@deftypefunx bool u16_startswith (const@tie{}uint16_t@tie{}*@var{str}, const@tie{}uint16_t@tie{}*@var{prefix})
+@deftypefunx bool u32_startswith (const@tie{}uint32_t@tie{}*@var{str}, const@tie{}uint32_t@tie{}*@var{prefix})
Tests whether @var{str} starts with @var{prefix}.
@end deftypefun
-@deftypefun bool u8_endswith (const uint8_t *@var{str}, const uint8_t *@var{suffix})
-@deftypefunx bool u16_endswith (const uint16_t *@var{str}, const uint16_t *@var{suffix})
-@deftypefunx bool u32_endswith (const uint32_t *@var{str}, const uint32_t *@var{suffix})
+@deftypefun bool u8_endswith (const@tie{}uint8_t@tie{}*@var{str}, const@tie{}uint8_t@tie{}*@var{suffix})
+@deftypefunx bool u16_endswith (const@tie{}uint16_t@tie{}*@var{str}, const@tie{}uint16_t@tie{}*@var{suffix})
+@deftypefunx bool u32_endswith (const@tie{}uint32_t@tie{}*@var{str}, const@tie{}uint32_t@tie{}*@var{suffix})
Tests whether @var{str} ends with @var{suffix}.
@end deftypefun
@@ -572,9 +572,9 @@ Tests whether @var{str} ends with @var{suffix}.
The following function does one step in tokenizing a Unicode string.
-@deftypefun {uint8_t *} u8_strtok (uint8_t *@var{str}, const uint8_t *@var{delim}, uint8_t **@var{ptr})
-@deftypefunx {uint16_t *} u16_strtok (uint16_t *@var{str}, const uint16_t *@var{delim}, uint16_t **@var{ptr})
-@deftypefunx {uint32_t *} u32_strtok (uint32_t *@var{str}, const uint32_t *@var{delim}, uint32_t **@var{ptr})
+@deftypefun {uint8_t *} u8_strtok (uint8_t@tie{}*@var{str}, const@tie{}uint8_t@tie{}*@var{delim}, uint8_t@tie{}**@var{ptr})
+@deftypefunx {uint16_t *} u16_strtok (uint16_t@tie{}*@var{str}, const@tie{}uint16_t@tie{}*@var{delim}, uint16_t@tie{}**@var{ptr})
+@deftypefunx {uint32_t *} u32_strtok (uint32_t@tie{}*@var{str}, const@tie{}uint32_t@tie{}*@var{delim}, uint32_t@tie{}**@var{ptr})
Divides @var{str} into tokens separated by characters in @var{delim}.
This function is similar to @posixfunc{strtok_r} and @posixfunc{wcstok}, except
diff --git a/doc/uniwbrk.texi b/doc/uniwbrk.texi
index d3ca344..70f551d 100644
--- a/doc/uniwbrk.texi
+++ b/doc/uniwbrk.texi
@@ -21,10 +21,10 @@ operations.
The following functions determine the word breaks in a string.
-@deftypefun void u8_wordbreaks (const uint8_t *@var{s}, size_t @var{n}, char *@var{p})
-@deftypefunx void u16_wordbreaks (const uint16_t *@var{s}, size_t @var{n}, char *@var{p})
-@deftypefunx void u32_wordbreaks (const uint32_t *@var{s}, size_t @var{n}, char *@var{p})
-@deftypefunx void ulc_wordbreaks (const char *@var{s}, size_t @var{n}, char *@var{p})
+@deftypefun void u8_wordbreaks (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, char@tie{}*@var{p})
+@deftypefunx void u16_wordbreaks (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, char@tie{}*@var{p})
+@deftypefunx void u32_wordbreaks (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, char@tie{}*@var{p})
+@deftypefunx void ulc_wordbreaks (const@tie{}char@tie{}*@var{s}, size_t@tie{}@var{n}, char@tie{}*@var{p})
Determines the word break points in @var{s}, an array of @var{n} units, and
stores the result at @code{@var{p}[0..@var{n}-1]}.
@table @asis
@@ -77,6 +77,6 @@ may be added in the future.
The following function looks up the word break property of a character.
-@deftypefun int uc_wordbreak_property (ucs4_t @var{uc})
+@deftypefun int uc_wordbreak_property (ucs4_t@tie{}@var{uc})
Returns the Word_Break property of a Unicode character.
@end deftypefun
diff --git a/doc/uniwidth.texi b/doc/uniwidth.texi
index a05d101..4831da2 100644
--- a/doc/uniwidth.texi
+++ b/doc/uniwidth.texi
@@ -21,23 +21,23 @@ the encoding (e.g@. @code{"ISO-8859-2"} for Polish).
@cindex Unicode character, width
@cindex halfwidth
@cindex fullwidth
-@deftypefun int uc_width (ucs4_t @var{uc}, const char *@var{encoding})
+@deftypefun int uc_width (ucs4_t@tie{}@var{uc}, const@tie{}char@tie{}*@var{encoding})
Determines and returns the number of column positions required for @var{uc}.
Returns -1 if @var{uc} is a control character that has an influence on the
column position when output.
@end deftypefun
-@deftypefun int u8_width (const uint8_t *@var{s}, size_t @var{n}, const char *@var{encoding})
-@deftypefunx int u16_width (const uint16_t *@var{s}, size_t @var{n}, const char *@var{encoding})
-@deftypefunx int u32_width (const uint32_t *@var{s}, size_t @var{n}, const char *@var{encoding})
+@deftypefun int u8_width (const@tie{}uint8_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{encoding})
+@deftypefunx int u16_width (const@tie{}uint16_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{encoding})
+@deftypefunx int u32_width (const@tie{}uint32_t@tie{}*@var{s}, size_t@tie{}@var{n}, const@tie{}char@tie{}*@var{encoding})
Determines and returns the number of column positions required for first
@var{n} units (or fewer if @var{s} ends before this) in @var{s}. This
function ignores control characters in the string.
@end deftypefun
-@deftypefun int u8_strwidth (const uint8_t *@var{s}, const char *@var{encoding})
-@deftypefunx int u16_strwidth (const uint16_t *@var{s}, const char *@var{encoding})
-@deftypefunx int u32_strwidth (const uint32_t *@var{s}, const char *@var{encoding})
+@deftypefun int u8_strwidth (const@tie{}uint8_t@tie{}*@var{s}, const@tie{}char@tie{}*@var{encoding})
+@deftypefunx int u16_strwidth (const@tie{}uint16_t@tie{}*@var{s}, const@tie{}char@tie{}*@var{encoding})
+@deftypefunx int u32_strwidth (const@tie{}uint32_t@tie{}*@var{s}, const@tie{}char@tie{}*@var{encoding})
Determines and returns the number of column positions required for @var{s}.
This function ignores control characters in the string.
@end deftypefun