From: Jarkko Hietaniemi Date: Thu, 7 Dec 2000 18:23:47 +0000 (+0000) Subject: Document utf8_length(), utf8_distance(), and utf8_hop(). X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=b06226ff370ef661c3ff28e6f65e1ba0ef078609;p=p5sagit%2Fp5-mst-13.2.git Document utf8_length(), utf8_distance(), and utf8_hop(). p4raw-id: //depot/perl@8023 --- diff --git a/embed.pl b/embed.pl index ac43b07..35b714f 100755 --- a/embed.pl +++ b/embed.pl @@ -2079,7 +2079,7 @@ ApM |U8* |utf8_to_bytes |U8 *s|STRLEN *len ApM |U8* |bytes_to_utf8 |U8 *s|STRLEN *len Ap |UV |utf8_to_uv_simple|U8 *s|STRLEN* retlen Ap |UV |utf8_to_uv |U8 *s|STRLEN curlen|STRLEN* retlen|U32 flags -Ap |U8* |uv_to_utf8|U8 *d|UV uv +Ap |U8* |uv_to_utf8 |U8 *d|UV uv p |void |vivify_defelem |SV* sv p |void |vivify_ref |SV* sv|U32 to_what p |I32 |wait4pid |Pid_t pid|int* statusp|int flags diff --git a/pod/perlapi.pod b/pod/perlapi.pod index f5b237f..8bcece2 100644 --- a/pod/perlapi.pod +++ b/pod/perlapi.pod @@ -3063,8 +3063,8 @@ Found in file sv.c Unsets the RV status of the SV, and decrements the reference count of whatever was being referenced by the RV. This can almost be thought of -as a reversal of C. This is C with C -of zero. See C. +as a reversal of C. This is C with the C +being zero. See C. void sv_unref(SV* sv) @@ -3219,6 +3219,43 @@ string, false otherwise. =for hackers Found in file utf8.c +=item utf8_distance + +Returns the number of UTF8 characters between the UTF-8 pointers C +and C. + +WARNING: use only if you *know* that the pointers point inside the +same UTF-8 buffer. + + IV utf8_distance(U8 *a, U8 *b) + +=for hackers +Found in file utf8.c + +=item utf8_hop + +Move the C pointing to UTF-8 data by C characters, either forward +or backward. + +WARNING: do not use the following unless you *know* C is within +the UTF-8 buffer pointed to by C. + + U8* utf8_hop(U8 *s, I32 off) + +=for hackers +Found in file utf8.c + +=item utf8_length + +Return the length of the UTF-8 char encoded string C in characters. +Stops at C (inclusive). If C s> or if the scan would end +up past C, croaks. + + STRLEN utf8_length(U8* s, U8 *e) + +=for hackers +Found in file utf8.c + =item utf8_to_bytes Converts a string C of length C from UTF8 into byte encoding. diff --git a/utf8.c b/utf8.c index bc0a521..244bb63 100644 --- a/utf8.c +++ b/utf8.c @@ -362,7 +362,7 @@ Perl_utf8_to_uv_simple(pTHX_ U8* s, STRLEN* retlen) } /* -=for apidoc|utf8_length|U8 *s|U8 *e +=for apidoc Am|STRLEN|utf8_length|U8* s|U8 *e Return the length of the UTF-8 char encoded string C in characters. Stops at C (inclusive). If C s> or if the scan would end @@ -390,8 +390,16 @@ Perl_utf8_length(pTHX_ U8* s, U8* e) return len; } -/* utf8_distance(a,b) returns the number of UTF8 characters between - the pointers a and b */ +/* +=for apidoc Am|IV|utf8_distance|U8 *a|U8 *b + +Returns the number of UTF8 characters between the UTF-8 pointers C +and C. + +WARNING: use only if you *know* that the pointers point inside the +same UTF-8 buffer. + +=cut */ IV Perl_utf8_distance(pTHX_ U8 *a, U8 *b) @@ -422,7 +430,16 @@ Perl_utf8_distance(pTHX_ U8 *a, U8 *b) return off; } -/* WARNING: do not use the following unless you *know* off is within bounds */ +/* +=for apidoc Am|U8*|utf8_hop|U8 *s|I32 off + +Move the C pointing to UTF-8 data by C characters, either forward +or backward. + +WARNING: do not use the following unless you *know* C is within +the UTF-8 buffer pointed to by C. + +=cut */ U8 * Perl_utf8_hop(pTHX_ U8 *s, I32 off)