int32_t CaseInsensitiveCompare(const char *a, const char *b, uint32_t len) { for (const char *aend = a + len; a < aend; ++a, ++b) { char la = NS_ToLower(*a); char lb = NS_ToLower(*b); if (la == lb) continue; return la < lb ? -1 : 1; } return 0; }
int32_t CaseInsensitiveCompare(const char* aStrA, const char* aStrB, uint32_t aLen) { for (const char* aend = aStrA + aLen; aStrA < aend; ++aStrA, ++aStrB) { char la = NS_ToLower(*aStrA); char lb = NS_ToLower(*aStrB); if (la == lb) { continue; } return la < lb ? -1 : 1; } return 0; }
uint32_t ToLowerCase(nsACString& aStr) { char *begin, *end; uint32_t len = aStr.BeginWriting(&begin, &end); for (; begin < end; ++begin) { *begin = NS_ToLower(*begin); } return len; }
bool nsAString::LowerCaseEqualsLiteral(const char *aASCIIString) const { const PRUnichar *begin, *end; BeginReading(&begin, &end); for (; begin < end; ++begin, ++aASCIIString) { if (!*aASCIIString || !NS_IsAscii(*begin) || NS_ToLower((char) *begin) != *aASCIIString) { return false; } } return *aASCIIString == '\0'; }
uint32_t ToLowerCase(const nsACString& aSrc, nsACString& aDest) { const char *begin, *end; uint32_t len = aSrc.BeginReading(&begin, &end); char *dest; NS_CStringGetMutableData(aDest, len, &dest); for (; begin < end; ++begin, ++dest) { *dest = NS_ToLower(*begin); } return len; }