diff options
author | nyamatongwe <devnull@localhost> | 2009-07-21 09:05:43 +0000 |
---|---|---|
committer | nyamatongwe <devnull@localhost> | 2009-07-21 09:05:43 +0000 |
commit | d6c7ef2346d60ad934231d6b4bf6d342b278a0d4 (patch) | |
tree | 6039e12ca6c8f447ca34fbe3c3b0195d4c3a2372 /src/CharClassify.cxx | |
parent | 276e578482a2c83e16ac51d06058afa4213fccbc (diff) | |
download | scintilla-mirror-d6c7ef2346d60ad934231d6b4bf6d342b278a0d4.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; +} |