--- parser3/src/include/pa_globals.h 2001/11/16 12:38:43 1.69 +++ parser3/src/include/pa_globals.h 2002/04/19 09:36:50 1.83 @@ -1,21 +1,22 @@ /** @file Parser: global decls. - Copyright (c) 2001 ArtLebedev Group (http://www.artlebedev.com) - Author: Alexander Petrosyan (http://paf.design.ru) + Copyright (c) 2001, 2002 ArtLebedev Group (http://www.artlebedev.com) + Author: Alexandr Petrosian (http://paf.design.ru) - $Id: pa_globals.h,v 1.69 2001/11/16 12:38:43 paf Exp $ + $Id: pa_globals.h,v 1.83 2002/04/19 09:36:50 paf Exp $ */ #ifndef PA_GLOBALS_H #define PA_GLOBALS_H -#include "pa_config_includes.h" #include "pa_pool.h" class String; class Hash; class Dictionary; +class Charset; +class Array; //@{ /// constant string. class name, predefined method & co @@ -33,11 +34,9 @@ class Dictionary; #define SIZE_NAME "size" #define TEXT_NAME "text" -#define EXCEPTION_METHOD_NAME "exception" +#define UNHANDLED_EXCEPTION_METHOD_NAME "unhandled_exception" #define POST_PROCESS_METHOD_NAME "postprocess" -#define UNNAMED_NAME "unnamed" - #define MAIN_METHOD_NAME "main" #define AUTO_METHOD_NAME "auto" @@ -52,6 +51,13 @@ class Dictionary; #define RESULT_VAR_NAME "result" #define MATCH_VAR_NAME "match" +#define EXCEPTION_VAR_NAME "exception" +#define EXCEPTION_TYPE_PART_NAME "type" +#define EXCEPTION_SOURCE_PART_NAME "source" +#define EXCEPTION_COMMENT_PART_NAME "comment" +#define EXCEPTION_HANDLED_PART_NAME "handled" + + #define STRING_PRE_MATCH_NAME "prematch" #define STRING_MATCH_NAME "match" #define STRING_POST_MATCH_NAME "postmatch" @@ -60,7 +66,8 @@ class Dictionary; #define CONTENT_DISPOSITION_FILENAME_NAME "filename" #define SWITCH_DATA_NAME "SWITCH-DATA" -#define CASE_DEFAULT_VALUE "DEFAULT" + +#define CACHE_DATA_NAME "CACHE-DATA" #define CLASS_PATH_NAME "CLASS_PATH" @@ -68,6 +75,8 @@ class Dictionary; #define SQL_OFFSET_NAME "offset" #define SQL_DEFAULT_NAME "default" +#define CHARSET_UTF8_NAME "UTF-8" + #define HASH_DEFAULT_ELEMENT_NAME "_default" //@} @@ -91,18 +100,15 @@ extern String *name_name; extern String *size_name; extern String *text_name; -extern String *exception_method_name; +extern String *unhandled_exception_method_name; extern String *post_process_method_name; -extern String *unnamed_name; - extern String *auto_method_name; extern String *main_method_name; extern String *main_class_name; -extern String *defaults_name; extern String *charsets_name; extern String *mime_types_name; @@ -111,9 +117,12 @@ extern String *origins_mode_name; extern String *result_var_name; extern String *match_var_name; -extern String *string_pre_match_name; -extern String *string_match_name; -extern String *string_post_match_name; + +extern String *exception_var_name; +extern String *exception_type_part_name; +extern String *exception_source_part_name; +extern String *exception_comment_part_name; +extern String *exception_handled_part_name; extern String *content_disposition_name; extern String *content_disposition_filename_name; @@ -123,20 +132,38 @@ extern String *limits_name; extern String *class_path_name; extern String *switch_data_name; -extern String *case_default_value; + +extern String *cache_data_name; extern String *sql_limit_name; extern String *sql_offset_name; extern String *sql_default_name; +extern String *charset_UTF8_name; + extern String *hash_default_element_name; //@} -/// global hash +/// String::match uses this as replace & global search table columns +const int MAX_STRING_MATCH_TABLE_COLUMNS=100; +extern Array *string_match_table_columns; + +/// name to enum language table extern Hash *untaint_lang_name2enum; -/// global table -extern Dictionary *default_typo_dict; + +/// UTF8 charset +extern Charset *utf8_charset; + +#ifdef XML +/// DOMImplementation +extern GdomeDOMImplementation *domimpl; + +/// flag whether there were some xml generic errors on current thread +bool xmlHaveGenericErrors(); +/// get xml generic error accumulated for current thread. WARNING: it is up to caller to free up +const char *xmlGenericErrors(); +#endif #endif