diff options
author | nyamatongwe <unknown> | 2009-07-21 09:05:43 +0000 |
---|---|---|
committer | nyamatongwe <unknown> | 2009-07-21 09:05:43 +0000 |
commit | 7b7af48a7681ab335ba2c53ffa48ab053ddf4c86 (patch) | |
tree | 6039e12ca6c8f447ca34fbe3c3b0195d4c3a2372 /src/CharClassify.cxx | |
parent | f20e894bd45438901560b6838cea7d4639f1e5c6 (diff) | |
download | scintilla-mirror-7b7af48a7681ab335ba2c53ffa48ab053ddf4c86.tar.gz |
Using a much simpler property set implementation.
Accessor objects use the PropertyGet interface to access just the property
set methods they need.
Removed SString.
Diffstat (limited to 'src/CharClassify.cxx')
-rw-r--r-- | src/CharClassify.cxx | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/CharClassify.cxx b/src/CharClassify.cxx index acab4b229..42a0ff10e 100644 --- a/src/CharClassify.cxx +++ b/src/CharClassify.cxx @@ -41,3 +41,37 @@ void CharClassify::SetCharClasses(const unsigned char *chars, cc newCharClass) { } } } + +int CompareCaseInsensitive(const char *a, const char *b) { + while (*a && *b) { + if (*a != *b) { + char upperA = MakeUpperCase(*a); + char upperB = MakeUpperCase(*b); + if (upperA != upperB) + return upperA - upperB; + } + a++; + b++; + } + // Either *a or *b is nul + return *a - *b; +} + +int CompareNCaseInsensitive(const char *a, const char *b, size_t len) { + while (*a && *b && len) { + if (*a != *b) { + char upperA = MakeUpperCase(*a); + char upperB = MakeUpperCase(*b); + if (upperA != upperB) + return upperA - upperB; + } + a++; + b++; + len--; + } + if (len == 0) + return 0; + else + // Either *a or *b is nul + return *a - *b; +} |