summaryrefslogtreecommitdiff
path: root/pod/perlapi.pod
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2002-01-02 15:12:57 +0000
committerJarkko Hietaniemi <jhi@iki.fi>2002-01-02 15:12:57 +0000
commitd07ddd77a31b1e57c2f358652e4f3f85d2e29ad4 (patch)
tree7013c4763e4deccb95dbf68591f81dcc612507cc /pod/perlapi.pod
parent2da3dd1220db0c8e18e8bcc1b6c47f5f168dc6fc (diff)
downloadperl-d07ddd77a31b1e57c2f358652e4f3f85d2e29ad4.tar.gz
One more iteration of the ibcmp_utf8() interface,
hopefully this is a convergent iteration... p4raw-id: //depot/perl@14014
Diffstat (limited to 'pod/perlapi.pod')
-rw-r--r--pod/perlapi.pod21
1 files changed, 14 insertions, 7 deletions
diff --git a/pod/perlapi.pod b/pod/perlapi.pod
index 44669f582d..915e40c21d 100644
--- a/pod/perlapi.pod
+++ b/pod/perlapi.pod
@@ -1133,18 +1133,25 @@ Found in file hv.c
Return true if the strings s1 and s2 differ case-insensitively, false
if not (if they are equal case-insensitively). If u1 is true, the
string s1 is assumed to be in UTF-8-encoded Unicode. If u2 is true,
-the string s2 is assumed to be in UTF-8-encoded Unicode.
+the string s2 is assumed to be in UTF-8-encoded Unicode. If u1 or u2
+are false, the respective string is assumed to be in native 8-bit
+encoding.
+
+If the pe1 and pe2 are non-NULL, the scanning pointers will be copied
+in there (they will point at the beginning of the I<next> character).
+If the pointers behind pe1 or pe2 are non-NULL, they are the end
+pointers beyond which scanning will not continue under any
+circustances. If the byte lengths l1 and l2 are non-zero, s1+l1 and
+s2+l2 will be used as goal end pointers that will also stop the scan,
+and which qualify towards defining a successful match: all the scans
+that define an explicit length must reach their goal pointers for
+a match to succeed).
For case-insensitiveness, the "casefolding" of Unicode is used
instead of upper/lowercasing both the characters, see
http://www.unicode.org/unicode/reports/tr21/ (Case Mappings).
-If either length is (STRLEN)-1 the scan will continue until a match is
-found. If both lengths are (STRLEN)-1, true is returned (as a sign of
-non-match). In the case of a match, the f1 and f2 are updated to record
-how far the comparison proceeded.
-
- I32 ibcmp_utf8(const char* a, I32 len1, bool u1, char **ae, const char* b, I32 len2, bool u2, char **be)
+ I32 ibcmp_utf8(const char* a, char **pe1, UV l1, bool u1, const char* b, char **pe2, UV l2, bool u2)
=for hackers
Found in file utf8.c