util.c
/*
=for apidoc foldEQ

Returns true if the leading len bytes of the strings s1 and s2 are the same
case-insensitively; false otherwise.  Uppercase and lowercase ASCII range bytes
match themselves and their opposite case counterparts.  Non-cased and non-ASCII
range bytes match only themselves.

=cut
*/
for apidoc foldEQ
Returns true if the leading len bytes of the strings s1 and s2 are the same
case-insensitively; false otherwise.  Uppercase and lowercase ASCII range bytes
match themselves and their opposite case counterparts.  Non-cased and non-ASCII
range bytes match only themselves.

cut
for apidoc foldEQ Returns true if the leading len bytes of the strings s1 and s2 are the same case - insensitively ; false otherwise . Uppercase and lowercase ASCII range bytes match themselves and their opposite case counterparts . Non - cased and non - ASCII range bytes match only themselves . cut
I32
Perl_foldEQ(const char *s1, const char *s2, register I32 len)
{
    register const U8 *a = (const U8 *)s1;
    register const U8 *b = (const U8 *)s2;
    PERL_ARGS_ASSERT_FOLDEQ;
    while (len--) {
	if (*a != *b && *a != PL_fold[*b])
	    return 0;
	a++,b++;
    }
    return 1;
}
I32 Perl_foldEQ ( const char * s1 , const char * s2 , register I32 len ) { register const U8 * a = ( const U8 * ) s1 ; register const U8 * b = ( const U8 * ) s2 ; PERL_ARGS_ASSERT_FOLDEQ ; while ( len -- ) { if ( * a != * b && * a != PL_fold [ * b ] ) return 0 ; a ++ , b ++ ; } return 1 ; }
for apidoc foldEQ
Returns true if the leading len bytes of the strings s1 and s2 are the same
case-insensitively; false otherwise.
for apidoc foldEQ Returns true if the leading len bytes of the strings s1 and s2 are the same case - insensitively ; false otherwise .