Annotation of parser3/src/include/pa_globals.h, revision 1.95
1.13 paf 1: /** @file
1.15 paf 2: Parser: global decls.
3:
1.77 paf 4: Copyright (c) 2001, 2002 ArtLebedev Group (http://www.artlebedev.com)
1.78 paf 5: Author: Alexandr Petrosian <paf@design.ru> (http://paf.design.ru)
1.1 paf 6: */
7:
8: #ifndef PA_GLOBALS_H
9: #define PA_GLOBALS_H
1.90 paf 10:
1.95 ! paf 11: static const char* IDENT_GLOBALS_H="$Date: 2002/08/08 14:35:30 $";
1.1 paf 12:
1.27 paf 13: #include "pa_pool.h"
14:
15: class String;
16: class Hash;
1.57 parser 17: class Dictionary;
1.71 paf 18: class Charset;
1.84 paf 19: class Table;
1.1 paf 20:
1.14 paf 21: //@{
22: /// constant string. class name, predefined method & co
1.21 paf 23: #define AUTO_FILE_NAME "auto.p"
1.1 paf 24:
1.8 paf 25: #define CONTENT_TYPE_NAME "content-type"
1.63 parser 26: #define CHARSET_NAME "charset"
1.8 paf 27: #define BODY_NAME "body"
1.11 paf 28: #define VALUE_NAME "value"
1.12 paf 29: #define EXPIRES_NAME "expires"
30: #define PATH_NAME "path"
1.16 paf 31: #define NAME_NAME "name"
1.46 paf 32: #define NONAME_DAT "noname.dat"
1.16 paf 33: #define SIZE_NAME "size"
34: #define TEXT_NAME "text"
1.8 paf 35:
1.88 paf 36: #define CONF_METHOD_NAME "conf"
1.1 paf 37: #define AUTO_METHOD_NAME "auto"
38:
39: #define MAIN_CLASS_NAME "MAIN"
40:
1.29 paf 41: #define DEFAULTS_NAME "DEFAULTS"
1.66 parser 42: #define CHARSETS_NAME "CHARSETS"
1.36 paf 43: #define MIME_TYPES_NAME "MIME-TYPES"
1.55 parser 44: #define ORIGINS_MODE_NAME "ORIGINS"
1.37 paf 45:
1.6 paf 46: #define RESULT_VAR_NAME "result"
1.56 parser 47: #define MATCH_VAR_NAME "match"
1.34 paf 48:
1.79 paf 49: #define EXCEPTION_VAR_NAME "exception"
50: #define EXCEPTION_TYPE_PART_NAME "type"
51: #define EXCEPTION_SOURCE_PART_NAME "source"
52: #define EXCEPTION_COMMENT_PART_NAME "comment"
53: #define EXCEPTION_HANDLED_PART_NAME "handled"
54:
55:
1.49 paf 56: #define STRING_PRE_MATCH_NAME "prematch"
1.34 paf 57: #define STRING_MATCH_NAME "match"
1.49 paf 58: #define STRING_POST_MATCH_NAME "postmatch"
1.52 paf 59:
1.92 paf 60: #define DATE_CALENDAR_WEEKNO_NAME "week"
1.94 paf 61: #define DATE_CALENDAR_WEEKYEAR_NAME "year"
1.92 paf 62:
1.52 paf 63: #define CONTENT_DISPOSITION_NAME "content-disposition"
64: #define CONTENT_DISPOSITION_FILENAME_NAME "filename"
65:
1.58 parser 66: #define SWITCH_DATA_NAME "SWITCH-DATA"
67:
1.80 paf 68: #define CACHE_DATA_NAME "CACHE-DATA"
69:
1.62 parser 70: #define CLASS_PATH_NAME "CLASS_PATH"
1.59 parser 71:
1.60 parser 72: #define SQL_LIMIT_NAME "limit"
73: #define SQL_OFFSET_NAME "offset"
74: #define SQL_DEFAULT_NAME "default"
1.95 ! paf 75: #define SQL_DISTINCT_NAME "distinct"
1.60 parser 76:
1.71 paf 77: #define CHARSET_UTF8_NAME "UTF-8"
78:
1.61 parser 79: #define HASH_DEFAULT_ELEMENT_NAME "_default"
80:
1.14 paf 81: //@}
1.6 paf 82:
1.14 paf 83: /// core func
1.23 paf 84: void pa_globals_init(Pool& pool);
1.5 paf 85:
1.14 paf 86: /// hex_value[c] = hex value of c
1.5 paf 87: extern short hex_value[0x100];
1.1 paf 88:
1.14 paf 89: //@{
90: /// global string
1.69 paf 91: extern String *optimized_html_name;
1.8 paf 92: extern String *content_type_name;
1.63 parser 93: extern String *charset_name;
1.8 paf 94: extern String *body_name;
1.11 paf 95: extern String *value_name;
1.12 paf 96: extern String *expires_name;
97: extern String *path_name;
1.16 paf 98: extern String *name_name;
99: extern String *size_name;
100: extern String *text_name;
1.8 paf 101:
1.88 paf 102: extern String *conf_method_name;
1.1 paf 103: extern String *auto_method_name;
104:
105: extern String *main_class_name;
1.4 paf 106:
1.9 paf 107:
1.66 parser 108: extern String *charsets_name;
1.49 paf 109:
1.29 paf 110: extern String *mime_types_name;
1.55 parser 111: extern String *origins_mode_name;
1.6 paf 112:
113: extern String *result_var_name;
1.56 parser 114: extern String *match_var_name;
1.79 paf 115:
116: extern String *exception_var_name;
117: extern String *exception_type_part_name;
118: extern String *exception_source_part_name;
119: extern String *exception_comment_part_name;
120: extern String *exception_handled_part_name;
1.52 paf 121:
122: extern String *content_disposition_name;
123: extern String *content_disposition_filename_name;
124:
125: extern String *limits_name;
1.59 parser 126:
127: extern String *class_path_name;
1.58 parser 128:
129: extern String *switch_data_name;
1.80 paf 130:
131: extern String *cache_data_name;
1.60 parser 132:
133: extern String *sql_limit_name;
134: extern String *sql_offset_name;
135: extern String *sql_default_name;
1.95 ! paf 136: extern String *sql_distinct_name;
1.61 parser 137:
1.71 paf 138: extern String *charset_UTF8_name;
139:
1.61 parser 140: extern String *hash_default_element_name;
1.58 parser 141:
1.14 paf 142: //@}
1.83 paf 143:
144: /// String::match uses this as replace & global search table columns
145: const int MAX_STRING_MATCH_TABLE_COLUMNS=100;
1.84 paf 146: extern Table *string_match_table_template;
1.92 paf 147:
148: extern Table *date_calendar_table_template;
1.1 paf 149:
1.71 paf 150: /// name to enum language table
1.1 paf 151: extern Hash *untaint_lang_name2enum;
1.72 paf 152:
153:
1.71 paf 154: /// UTF8 charset
155: extern Charset *utf8_charset;
1.74 paf 156:
1.75 paf 157: #ifdef XML
1.76 paf 158: /// DOMImplementation
159: extern GdomeDOMImplementation *domimpl;
160:
1.75 paf 161: /// flag whether there were some xml generic errors on current thread
162: bool xmlHaveGenericErrors();
1.74 paf 163: /// get xml generic error accumulated for current thread. WARNING: it is up to caller to free up
164: const char *xmlGenericErrors();
1.75 paf 165: #endif
1.1 paf 166:
167: #endif
E-mail: