(file) Return to CharSet.cpp CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Common

  1 karl  1.4 //%2006////////////////////////////////////////////////////////////////////////
  2 mike  1.2 //
  3           // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
  4           // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
  5           // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
  6           // IBM Corp.; EMC Corporation, The Open Group.
  7           // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
  8           // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
  9           // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 10           // EMC Corporation; VERITAS Software Corporation; The Open Group.
 11 karl  1.4 // Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 12           // EMC Corporation; Symantec Corporation; The Open Group.
 13 mike  1.2 //
 14           // Permission is hereby granted, free of charge, to any person obtaining a copy
 15           // of this software and associated documentation files (the "Software"), to
 16           // deal in the Software without restriction, including without limitation the
 17           // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
 18           // sell copies of the Software, and to permit persons to whom the Software is
 19           // furnished to do so, subject to the following conditions:
 20 karl  1.4 // 
 21 mike  1.2 // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
 22           // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
 23           // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
 24           // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
 25           // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 26           // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
 27           // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 28           // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 29           //
 30           //==============================================================================
 31           //
 32           // Author: Mike Brasher, Inova Europe (mike-brasher@austin.rr.com)
 33           //
 34           //%/////////////////////////////////////////////////////////////////////////////
 35           
 36           #include <cctype>
 37           #include <cstring>
 38           #include "CharSet.h"
 39           
 40           PEGASUS_NAMESPACE_BEGIN
 41           
 42 mike  1.2 //
 43           // Note: EBCDIC not supported but not needed by any known platform (z/OS Linux
 44           // uses ASCII). This will flag any future use to employ EBCDIC.
 45           //
 46           
 47           #ifdef PEGASUS_HAVE_EBCDIC
 48           # error "EBCDIC unsupported"
 49           #endif
 50           
 51           const Uint8 CharSet::_isAlphaUnder[256] = 
 52           {
 53               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 54               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 55               0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,
 56               0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,
 57               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 58               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 59               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 60               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 61           };
 62           
 63 mike  1.2 const Uint8 CharSet::_isAlNumUnder[256] = 
 64           {
 65               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 66               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,
 67               0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,
 68               0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,
 69               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 70               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 71               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 72               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 73           };
 74           
 75           const Uint8 CharSet::_isSpace[256] = 
 76           {
 77               0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 78               1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 79               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 80               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 81               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 82               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 83               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 84 mike  1.2     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 85           };
 86           
 87 kumpf 1.3 const Uint8 CharSet::_isXmlWhiteSpace[256] = 
 88           {
 89               0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 90               1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 91               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 92               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 93               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 94               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 95               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 96               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
 97           };
 98           
 99 mike  1.2 const Uint8 CharSet::_toUpper[256] = 
100           {
101               0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,
102               0x08,0x09,0x0A,0x0B,0x0C,0x0D,0x0E,0x0F,
103               0x10,0x11,0x12,0x13,0x14,0x15,0x16,0x17,
104               0x18,0x19,0x1A,0x1B,0x1C,0x1D,0x1E,0x1F,
105               0x20,0x21,0x22,0x23,0x24,0x25,0x26,0x27,
106               0x28,0x29,0x2A,0x2B,0x2C,0x2D,0x2E,0x2F,
107               0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,
108               0x38,0x39,0x3A,0x3B,0x3C,0x3D,0x3E,0x3F,
109               0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,
110               0x48,0x49,0x4A,0x4B,0x4C,0x4D,0x4E,0x4F,
111               0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,
112               0x58,0x59,0x5A,0x5B,0x5C,0x5D,0x5E,0x5F,
113               0x60,0x41,0x42,0x43,0x44,0x45,0x46,0x47,
114               0x48,0x49,0x4A,0x4B,0x4C,0x4D,0x4E,0x4F,
115               0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,
116               0x58,0x59,0x5A,0x7B,0x7C,0x7D,0x7E,0x7F,
117               0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,
118               0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,
119               0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,
120 mike  1.2     0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F,
121               0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,
122               0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,
123               0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,
124               0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF,
125               0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,
126               0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,
127               0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,
128               0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF,
129               0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,
130               0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF,
131               0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,
132               0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF,
133           };
134           
135           const Uint8 CharSet::_toLower[256] = 
136           {
137               0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,
138               0x08,0x09,0x0A,0x0B,0x0C,0x0D,0x0E,0x0F,
139               0x10,0x11,0x12,0x13,0x14,0x15,0x16,0x17,
140               0x18,0x19,0x1A,0x1B,0x1C,0x1D,0x1E,0x1F,
141 mike  1.2     0x20,0x21,0x22,0x23,0x24,0x25,0x26,0x27,
142               0x28,0x29,0x2A,0x2B,0x2C,0x2D,0x2E,0x2F,
143               0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,
144               0x38,0x39,0x3A,0x3B,0x3C,0x3D,0x3E,0x3F,
145               0x40,0x61,0x62,0x63,0x64,0x65,0x66,0x67,
146               0x68,0x69,0x6A,0x6B,0x6C,0x6D,0x6E,0x6F,
147               0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,
148               0x78,0x79,0x7A,0x5B,0x5C,0x5D,0x5E,0x5F,
149               0x60,0x61,0x62,0x63,0x64,0x65,0x66,0x67,
150               0x68,0x69,0x6A,0x6B,0x6C,0x6D,0x6E,0x6F,
151               0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,
152               0x78,0x79,0x7A,0x7B,0x7C,0x7D,0x7E,0x7F,
153               0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,
154               0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,
155               0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,
156               0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F,
157               0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,
158               0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,
159               0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,
160               0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF,
161               0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,
162 mike  1.2     0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,
163               0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,
164               0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF,
165               0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,
166               0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF,
167               0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,
168               0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF,
169           };
170           
171           const Uint8 CharSet::_isNotSpaceNorTerm[] =
172           {
173               0,1,1,1,1,1,1,1,1,0,0,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
174               0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
175               1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
176               1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
177               1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
178               1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
179               1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
180               1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
181           };
182           
183 mike  1.2 PEGASUS_NAMESPACE_END

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2