detach uptab from char_traits_char_nocase
This commit is contained in:
@@ -1623,7 +1623,7 @@ RString Capitalize( const RString &s )
|
||||
return s2;
|
||||
}
|
||||
|
||||
unsigned char char_traits_char_nocase::uptab[256] =
|
||||
unsigned char g_Uptab[256] =
|
||||
{
|
||||
0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0A,0x0B,0x0C,0x0D,0x0E,0x0F,
|
||||
0x10,0x11,0x12,0x13,0x14,0x15,0x16,0x17,0x18,0x19,0x1A,0x1B,0x1C,0x1D,0x1E,0x1F,
|
||||
|
||||
@@ -401,19 +401,19 @@ RString Capitalize( const RString &s );
|
||||
#include <unistd.h> /* correct place with correct definitions */
|
||||
#endif
|
||||
|
||||
extern unsigned char g_Uptab[256];
|
||||
|
||||
/* ASCII-only case insensitivity. */
|
||||
struct char_traits_char_nocase: public char_traits<char>
|
||||
{
|
||||
static unsigned char uptab[256];
|
||||
|
||||
static inline bool eq( char c1, char c2 )
|
||||
{ return uptab[(unsigned char)c1] == uptab[(unsigned char)c2]; }
|
||||
{ return g_Uptab[(unsigned char)c1] == uptab[(unsigned char)c2]; }
|
||||
|
||||
static inline bool ne( char c1, char c2 )
|
||||
{ return uptab[(unsigned char)c1] != uptab[(unsigned char)c2]; }
|
||||
{ return g_Uptab[(unsigned char)c1] != uptab[(unsigned char)c2]; }
|
||||
|
||||
static inline bool lt( char c1, char c2 )
|
||||
{ return uptab[(unsigned char)c1] < uptab[(unsigned char)c2]; }
|
||||
{ return g_Uptab[(unsigned char)c1] < uptab[(unsigned char)c2]; }
|
||||
|
||||
static int compare( const char* s1, const char* s2, size_t n )
|
||||
{
|
||||
@@ -429,7 +429,7 @@ struct char_traits_char_nocase: public char_traits<char>
|
||||
|
||||
static inline char fasttoupper(char a)
|
||||
{
|
||||
return uptab[(unsigned char)a];
|
||||
return g_Uptab[(unsigned char)a];
|
||||
}
|
||||
|
||||
static const char *find( const char* s, int n, char a )
|
||||
|
||||
Reference in New Issue
Block a user