00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef _terimber_declxml_h_
00029 #define _terimber_declxml_h_
00030
00031 #include "allinc.h"
00032
00033 BEGIN_TERIMBER_NAMESPACE
00034 #pragma pack(4)
00035
00036 extern const ub1_t s_char_map[256];
00037
00038 #if OS_TYPE == OS_WIN32
00039
00040 #define xml_forceinline __forceinline
00041 #else
00042 #define xml_forceinline inline
00043 #endif
00044
00045
00046
00047 const char ch_null = 0x00;
00048 const char ch_hor_tab = 0x09;
00049 const char ch_lf = 0x0A;
00050 const char ch_ver_tab = 0x0B;
00051 const char ch_ff = 0x0C;
00052 const char ch_cr = 0x0D;
00053 const char ch_ampersand = 0x26;
00054 const char ch_asterisk = 0x2A;
00055 const char ch_at = 0x40;
00056 const char ch_back_slash = 0x5C;
00057 const char ch_bang = 0x21;
00058 const char ch_caret = 0x5E;
00059 const char ch_close_angle = 0x3E;
00060 const char ch_close_curly = 0x7D;
00061 const char ch_close_paren = 0x29;
00062 const char ch_close_square = 0x5D;
00063 const char ch_colon = 0x3A;
00064 const char ch_comma = 0x2C;
00065 const char ch_dash = 0x2D;
00066 const char ch_dollar_sign = 0x24;
00067 const char ch_double_quote = 0x22;
00068 const char ch_equal = 0x3D;
00069 const char ch_forward_slash = 0x2F;
00070 const char ch_grave = 0x60;
00071
00072 const char ch_open_angle = 0x3C;
00073 const char ch_open_curly = 0x7B;
00074 const char ch_open_paren = 0x28;
00075 const char ch_open_square = 0x5B;
00076 const char ch_percent = 0x25;
00077 const char ch_period = 0x2E;
00078 const char ch_pipe = 0x7C;
00079 const char ch_plus = 0x2B;
00080 const char ch_pound = 0x23;
00081 const char ch_question = 0x3F;
00082 const char ch_single_quote = 0x27;
00083 const char ch_space = 0x20;
00084 const char ch_semicolon = 0x3B;
00085 const char ch_tilde = 0x7E;
00086 const char ch_underscore = 0x5F;
00087
00088
00089 const char ch_0 = 0x30;
00090 const char ch_1 = 0x31;
00091 const char ch_2 = 0x32;
00092 const char ch_3 = 0x33;
00093 const char ch_4 = 0x34;
00094 const char ch_5 = 0x35;
00095 const char ch_6 = 0x36;
00096 const char ch_7 = 0x37;
00097 const char ch_8 = 0x38;
00098 const char ch_9 = 0x39;
00099
00100 const char ch_a = 0x61;
00101 const char ch_b = 0x62;
00102 const char ch_c = 0x63;
00103 const char ch_d = 0x64;
00104 const char ch_e = 0x65;
00105 const char ch_f = 0x66;
00106 const char ch_g = 0x67;
00107 const char ch_h = 0x68;
00108 const char ch_i = 0x69;
00109 const char ch_j = 0x6A;
00110 const char ch_k = 0x6B;
00111 const char ch_l = 0x6C;
00112 const char ch_m = 0x6D;
00113 const char ch_n = 0x6E;
00114 const char ch_o = 0x6F;
00115 const char ch_p = 0x70;
00116 const char ch_q = 0x71;
00117 const char ch_r = 0x72;
00118 const char ch_s = 0x73;
00119 const char ch_t = 0x74;
00120 const char ch_u = 0x75;
00121 const char ch_v = 0x76;
00122 const char ch_w = 0x77;
00123 const char ch_x = 0x78;
00124 const char ch_y = 0x79;
00125 const char ch_z = 0x7A;
00126
00127 const char ch_A = 0x41;
00128 const char ch_B = 0x42;
00129 const char ch_C = 0x43;
00130 const char ch_D = 0x44;
00131 const char ch_E = 0x45;
00132 const char ch_F = 0x46;
00133 const char ch_G = 0x47;
00134 const char ch_H = 0x48;
00135 const char ch_I = 0x49;
00136 const char ch_J = 0x4A;
00137 const char ch_K = 0x4B;
00138 const char ch_L = 0x4C;
00139 const char ch_M = 0x4D;
00140 const char ch_N = 0x4E;
00141 const char ch_O = 0x4F;
00142 const char ch_P = 0x50;
00143 const char ch_Q = 0x51;
00144 const char ch_R = 0x52;
00145 const char ch_S = 0x53;
00146 const char ch_T = 0x54;
00147 const char ch_U = 0x55;
00148 const char ch_V = 0x56;
00149 const char ch_W = 0x57;
00150 const char ch_X = 0x58;
00151 const char ch_Y = 0x59;
00152 const char ch_Z = 0x5A;
00153
00156 enum encodingSchema
00157 {
00158 AUTO,
00159 UTF_8,
00160 US_ASCII,
00161
00162 UTF_16B,
00163 UTF_16L,
00164 UTF_16,
00165 UCS_4B,
00166 UCS_4BS,
00167 UCS_4L,
00168 UCS_4LS,
00169 UCS_4,
00170 WINDOWS_1251,
00171 UTF_ISO88591
00172 };
00173
00175
00177
00179 xml_forceinline
00180 bool
00181 is_white_space( ub1_t symbol
00182 );
00183
00185 xml_forceinline
00186 bool
00187 is_public_char( ub1_t symbol
00188 );
00189
00190
00192 xml_forceinline
00193 bool
00194 is_versionnum_char( ub1_t symbol
00195 );
00196
00197
00199 xml_forceinline
00200 bool
00201 is_encname_char( ub1_t symbol
00202 );
00204 xml_forceinline
00205 bool
00206 is_digit( ub1_t symbol
00207 );
00209 xml_forceinline
00210 bool
00211 is_letter( ub1_t symbol
00212 );
00213
00215 xml_forceinline
00216 bool
00217 is_name_first_char( ub1_t symbol
00218 );
00219
00221 xml_forceinline
00222 bool
00223 is_name_char( ub1_t symbol
00224 );
00225
00227 xml_forceinline
00228 bool
00229 is_attribute_char( ub1_t symbol
00230 );
00231
00232 #pragma pack()
00233 END_TERIMBER_NAMESPACE
00234
00235 #endif // _terimber_declxml_h_